{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Pandas缺失值类型\n",
    "# 应用relace实现数据替换\n",
    "# 应用dropna实现缺失值删除\n",
    "# 应用fillna实现缺失值填充\n",
    "# 应用isnull判断是否有缺失值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Rank                  False\n",
       "Title                 False\n",
       "Genre                 False\n",
       "Description           False\n",
       "Director              False\n",
       "Actors                False\n",
       "Year                  False\n",
       "Runtime (Minutes)     False\n",
       "Rating                False\n",
       "Votes                 False\n",
       "Revenue (Millions)     True\n",
       "Metascore              True\n",
       "dtype: bool"
      ]
     },
     "execution_count": 80,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = pd.read_csv(\"./IMDB/IMDB-Movie-Data.csv\")\n",
    "np.any(data.isnull()) # 有缺失值\n",
    "data.isnull().any()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1000, 12)"
      ]
     },
     "execution_count": 81,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 简单粗暴的方式删除缺失值\n",
    "ret = data.dropna(axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "bool"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "type(True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(192, 12)"
      ]
     },
     "execution_count": 84,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[data.isnull().values == True].shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Rank                  False\n",
       "Title                 False\n",
       "Genre                 False\n",
       "Description           False\n",
       "Director              False\n",
       "Actors                False\n",
       "Year                  False\n",
       "Runtime (Minutes)     False\n",
       "Rating                False\n",
       "Votes                 False\n",
       "Revenue (Millions)    False\n",
       "Metascore             False\n",
       "dtype: bool"
      ]
     },
     "execution_count": 85,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ret.isnull().any()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 86,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.any(data.isnull())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Rank                  False\n",
       "Title                 False\n",
       "Genre                 False\n",
       "Description           False\n",
       "Director              False\n",
       "Actors                False\n",
       "Year                  False\n",
       "Runtime (Minutes)     False\n",
       "Rating                False\n",
       "Votes                 False\n",
       "Revenue (Millions)     True\n",
       "Metascore              True\n",
       "dtype: bool"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.isnull().any()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Rank</th>\n",
       "      <th>Title</th>\n",
       "      <th>Genre</th>\n",
       "      <th>Description</th>\n",
       "      <th>Director</th>\n",
       "      <th>Actors</th>\n",
       "      <th>Year</th>\n",
       "      <th>Runtime (Minutes)</th>\n",
       "      <th>Rating</th>\n",
       "      <th>Votes</th>\n",
       "      <th>Revenue (Millions)</th>\n",
       "      <th>Metascore</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>8</td>\n",
       "      <td>Mindhorn</td>\n",
       "      <td>Comedy</td>\n",
       "      <td>A has-been actor best known for playing the ti...</td>\n",
       "      <td>Sean Foley</td>\n",
       "      <td>Essie Davis, Andrea Riseborough, Julian Barrat...</td>\n",
       "      <td>2016</td>\n",
       "      <td>89</td>\n",
       "      <td>6.4</td>\n",
       "      <td>2490</td>\n",
       "      <td>NaN</td>\n",
       "      <td>71.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>23</td>\n",
       "      <td>Hounds of Love</td>\n",
       "      <td>Crime,Drama,Horror</td>\n",
       "      <td>A cold-blooded predatory couple while cruising...</td>\n",
       "      <td>Ben Young</td>\n",
       "      <td>Emma Booth, Ashleigh Cummings, Stephen Curry,S...</td>\n",
       "      <td>2016</td>\n",
       "      <td>108</td>\n",
       "      <td>6.7</td>\n",
       "      <td>1115</td>\n",
       "      <td>NaN</td>\n",
       "      <td>72.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>26</td>\n",
       "      <td>Paris pieds nus</td>\n",
       "      <td>Comedy</td>\n",
       "      <td>Fiona visits Paris for the first time to assis...</td>\n",
       "      <td>Dominique Abel</td>\n",
       "      <td>Fiona Gordon, Dominique Abel,Emmanuelle Riva, ...</td>\n",
       "      <td>2016</td>\n",
       "      <td>83</td>\n",
       "      <td>6.8</td>\n",
       "      <td>222</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>26</td>\n",
       "      <td>Paris pieds nus</td>\n",
       "      <td>Comedy</td>\n",
       "      <td>Fiona visits Paris for the first time to assis...</td>\n",
       "      <td>Dominique Abel</td>\n",
       "      <td>Fiona Gordon, Dominique Abel,Emmanuelle Riva, ...</td>\n",
       "      <td>2016</td>\n",
       "      <td>83</td>\n",
       "      <td>6.8</td>\n",
       "      <td>222</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>27</td>\n",
       "      <td>Bahubali: The Beginning</td>\n",
       "      <td>Action,Adventure,Drama</td>\n",
       "      <td>In ancient India, an adventurous and daring ma...</td>\n",
       "      <td>S.S. Rajamouli</td>\n",
       "      <td>Prabhas, Rana Daggubati, Anushka Shetty,Tamann...</td>\n",
       "      <td>2015</td>\n",
       "      <td>159</td>\n",
       "      <td>8.3</td>\n",
       "      <td>76193</td>\n",
       "      <td>6.5</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    Rank                    Title                   Genre  \\\n",
       "7      8                 Mindhorn                  Comedy   \n",
       "22    23           Hounds of Love      Crime,Drama,Horror   \n",
       "25    26          Paris pieds nus                  Comedy   \n",
       "25    26          Paris pieds nus                  Comedy   \n",
       "26    27  Bahubali: The Beginning  Action,Adventure,Drama   \n",
       "\n",
       "                                          Description        Director  \\\n",
       "7   A has-been actor best known for playing the ti...      Sean Foley   \n",
       "22  A cold-blooded predatory couple while cruising...       Ben Young   \n",
       "25  Fiona visits Paris for the first time to assis...  Dominique Abel   \n",
       "25  Fiona visits Paris for the first time to assis...  Dominique Abel   \n",
       "26  In ancient India, an adventurous and daring ma...  S.S. Rajamouli   \n",
       "\n",
       "                                               Actors  Year  \\\n",
       "7   Essie Davis, Andrea Riseborough, Julian Barrat...  2016   \n",
       "22  Emma Booth, Ashleigh Cummings, Stephen Curry,S...  2016   \n",
       "25  Fiona Gordon, Dominique Abel,Emmanuelle Riva, ...  2016   \n",
       "25  Fiona Gordon, Dominique Abel,Emmanuelle Riva, ...  2016   \n",
       "26  Prabhas, Rana Daggubati, Anushka Shetty,Tamann...  2015   \n",
       "\n",
       "    Runtime (Minutes)  Rating  Votes  Revenue (Millions)  Metascore  \n",
       "7                  89     6.4   2490                 NaN       71.0  \n",
       "22                108     6.7   1115                 NaN       72.0  \n",
       "25                 83     6.8    222                 NaN        NaN  \n",
       "25                 83     6.8    222                 NaN        NaN  \n",
       "26                159     8.3  76193                 6.5        NaN  "
      ]
     },
     "execution_count": 89,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[data.isnull().values == True].head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "data[\"Revenue (Millions)\"] = data[\"Revenue (Millions)\"].fillna(data[\"Revenue (Millions)\"].mean())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Rank                  False\n",
       "Title                 False\n",
       "Genre                 False\n",
       "Description           False\n",
       "Director              False\n",
       "Actors                False\n",
       "Year                  False\n",
       "Runtime (Minutes)     False\n",
       "Rating                False\n",
       "Votes                 False\n",
       "Revenue (Millions)    False\n",
       "Metascore              True\n",
       "dtype: bool"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.isnull().any()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "data[\"Metascore\"].fillna(data[\"Metascore\"].mean(), inplace=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Rank                  False\n",
       "Title                 False\n",
       "Genre                 False\n",
       "Description           False\n",
       "Director              False\n",
       "Actors                False\n",
       "Year                  False\n",
       "Runtime (Minutes)     False\n",
       "Rating                False\n",
       "Votes                 False\n",
       "Revenue (Millions)    False\n",
       "Metascore             False\n",
       "dtype: bool"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.isnull().any()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 不是缺失值, 但是有特殊标记的, pandas只能处理缺失值 nan 其他的都不能不处理\n",
    "# 需要讲特殊标记线替换成为nan, 然后再进行缺失值处理\n",
    "# replace"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "float"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "type(np.nan)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [],
   "source": [
    "names = [\"Sample code number\", \"Clump Thickness\", \"Uniformity of Cell Size\", \"Uniformity of Cell Shape\", \"Marginal Adhesion\", \"Single Epithelial Cell Size\", \"Bare Nuclei\", \"Bland Chromatin\", \"Normal Nucleoli\", \"Mitoses\", \"Class\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [],
   "source": [
    "path = \"https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.data\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [],
   "source": [
    "wis = pd.read_csv(path, names=names)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Sample code number</th>\n",
       "      <th>Clump Thickness</th>\n",
       "      <th>Uniformity of Cell Size</th>\n",
       "      <th>Uniformity of Cell Shape</th>\n",
       "      <th>Marginal Adhesion</th>\n",
       "      <th>Single Epithelial Cell Size</th>\n",
       "      <th>Bare Nuclei</th>\n",
       "      <th>Bland Chromatin</th>\n",
       "      <th>Normal Nucleoli</th>\n",
       "      <th>Mitoses</th>\n",
       "      <th>Class</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1000025</td>\n",
       "      <td>5</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1002945</td>\n",
       "      <td>5</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>7</td>\n",
       "      <td>10</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1015425</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1016277</td>\n",
       "      <td>6</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>7</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1017023</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Sample code number  Clump Thickness  Uniformity of Cell Size  \\\n",
       "0             1000025                5                        1   \n",
       "1             1002945                5                        4   \n",
       "2             1015425                3                        1   \n",
       "3             1016277                6                        8   \n",
       "4             1017023                4                        1   \n",
       "\n",
       "   Uniformity of Cell Shape  Marginal Adhesion  Single Epithelial Cell Size  \\\n",
       "0                         1                  1                            2   \n",
       "1                         4                  5                            7   \n",
       "2                         1                  1                            2   \n",
       "3                         8                  1                            3   \n",
       "4                         1                  3                            2   \n",
       "\n",
       "  Bare Nuclei  Bland Chromatin  Normal Nucleoli  Mitoses  Class  \n",
       "0           1                3                1        1      2  \n",
       "1          10                3                2        1      2  \n",
       "2           2                3                1        1      2  \n",
       "3           4                3                7        1      2  \n",
       "4           1                3                1        1      2  "
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "wis.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [],
   "source": [
    "# help(wis.replace)\n",
    "wis.isnull().any()\n",
    "wis.replace(to_replace=\"?\",value=np.nan,inplace=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Sample code number             False\n",
       "Clump Thickness                False\n",
       "Uniformity of Cell Size        False\n",
       "Uniformity of Cell Shape       False\n",
       "Marginal Adhesion              False\n",
       "Single Epithelial Cell Size    False\n",
       "Bare Nuclei                     True\n",
       "Bland Chromatin                False\n",
       "Normal Nucleoli                False\n",
       "Mitoses                        False\n",
       "Class                          False\n",
       "dtype: bool"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "wis.isnull().any()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(16, 11)"
      ]
     },
     "execution_count": 64,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "wis[wis.isnull().values == True].shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = pd.read_csv(\"./IMDB/IMDB-Movie-Data.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['Rank', 'Title', 'Genre', 'Description', 'Director', 'Actors', 'Year',\n",
       "       'Runtime (Minutes)', 'Rating', 'Votes', 'Revenue (Millions)',\n",
       "       'Metascore'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 66,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.columns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6.7231999999999994"
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.Rating.mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0              James Gunn\n",
       "1            Ridley Scott\n",
       "2      M. Night Shyamalan\n",
       "3    Christophe Lourdelet\n",
       "4              David Ayer\n",
       "Name: Director, dtype: object"
      ]
     },
     "execution_count": 70,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.Director.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(644,)"
      ]
     },
     "execution_count": 72,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.unique(df.Director).shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1440x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "df[[\"Rating\"]].plot(kind=\"hist\", figsize=(20,8))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Help on method any in module pandas.core.frame:\n",
      "\n",
      "any(axis=None, bool_only=None, skipna=None, level=None, **kwargs) method of pandas.core.frame.DataFrame instance\n",
      "    Return whether any element is True over requested axis\n",
      "    \n",
      "    Parameters\n",
      "    ----------\n",
      "    axis : {index (0), columns (1)}\n",
      "    skipna : boolean, default True\n",
      "        Exclude NA/null values. If an entire row/column is NA, the result\n",
      "        will be NA\n",
      "    level : int or level name, default None\n",
      "        If the axis is a MultiIndex (hierarchical), count along a\n",
      "        particular level, collapsing into a Series\n",
      "    bool_only : boolean, default None\n",
      "        Include only boolean columns. If None, will attempt to use everything,\n",
      "        then use only boolean data. Not implemented for Series.\n",
      "    \n",
      "    Returns\n",
      "    -------\n",
      "    any : Series or DataFrame (if level specified)\n",
      "\n"
     ]
    }
   ],
   "source": [
    "help(data.any)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Rank                  False\n",
       "Title                 False\n",
       "Genre                 False\n",
       "Description           False\n",
       "Director              False\n",
       "Actors                False\n",
       "Year                  False\n",
       "Runtime (Minutes)     False\n",
       "Rating                False\n",
       "Votes                 False\n",
       "Revenue (Millions)     True\n",
       "Metascore              True\n",
       "dtype: bool"
      ]
     },
     "execution_count": 94,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.isnull().any(axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 如何实现数据的离散化呢"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>open</th>\n",
       "      <th>high</th>\n",
       "      <th>close</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>price_change</th>\n",
       "      <th>p_change</th>\n",
       "      <th>ma5</th>\n",
       "      <th>ma10</th>\n",
       "      <th>ma20</th>\n",
       "      <th>v_ma5</th>\n",
       "      <th>v_ma10</th>\n",
       "      <th>v_ma20</th>\n",
       "      <th>turnover</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-02-27</th>\n",
       "      <td>23.53</td>\n",
       "      <td>25.88</td>\n",
       "      <td>24.16</td>\n",
       "      <td>23.53</td>\n",
       "      <td>95578.03</td>\n",
       "      <td>0.63</td>\n",
       "      <td>2.68</td>\n",
       "      <td>22.942</td>\n",
       "      <td>22.142</td>\n",
       "      <td>22.875</td>\n",
       "      <td>53782.64</td>\n",
       "      <td>46738.65</td>\n",
       "      <td>55576.11</td>\n",
       "      <td>2.39</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-26</th>\n",
       "      <td>22.80</td>\n",
       "      <td>23.78</td>\n",
       "      <td>23.53</td>\n",
       "      <td>22.80</td>\n",
       "      <td>60985.11</td>\n",
       "      <td>0.69</td>\n",
       "      <td>3.02</td>\n",
       "      <td>22.406</td>\n",
       "      <td>21.955</td>\n",
       "      <td>22.942</td>\n",
       "      <td>40827.52</td>\n",
       "      <td>42736.34</td>\n",
       "      <td>56007.50</td>\n",
       "      <td>1.53</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-23</th>\n",
       "      <td>22.88</td>\n",
       "      <td>23.37</td>\n",
       "      <td>22.82</td>\n",
       "      <td>22.71</td>\n",
       "      <td>52914.01</td>\n",
       "      <td>0.54</td>\n",
       "      <td>2.42</td>\n",
       "      <td>21.938</td>\n",
       "      <td>21.929</td>\n",
       "      <td>23.022</td>\n",
       "      <td>35119.58</td>\n",
       "      <td>41871.97</td>\n",
       "      <td>56372.85</td>\n",
       "      <td>1.32</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-22</th>\n",
       "      <td>22.25</td>\n",
       "      <td>22.76</td>\n",
       "      <td>22.28</td>\n",
       "      <td>22.02</td>\n",
       "      <td>36105.01</td>\n",
       "      <td>0.36</td>\n",
       "      <td>1.64</td>\n",
       "      <td>21.446</td>\n",
       "      <td>21.909</td>\n",
       "      <td>23.137</td>\n",
       "      <td>35397.58</td>\n",
       "      <td>39904.78</td>\n",
       "      <td>60149.60</td>\n",
       "      <td>0.90</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-14</th>\n",
       "      <td>21.49</td>\n",
       "      <td>21.99</td>\n",
       "      <td>21.92</td>\n",
       "      <td>21.48</td>\n",
       "      <td>23331.04</td>\n",
       "      <td>0.44</td>\n",
       "      <td>2.05</td>\n",
       "      <td>21.366</td>\n",
       "      <td>21.923</td>\n",
       "      <td>23.253</td>\n",
       "      <td>33590.21</td>\n",
       "      <td>42935.74</td>\n",
       "      <td>61716.11</td>\n",
       "      <td>0.58</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             open   high  close    low    volume  price_change  p_change  \\\n",
       "2018-02-27  23.53  25.88  24.16  23.53  95578.03          0.63      2.68   \n",
       "2018-02-26  22.80  23.78  23.53  22.80  60985.11          0.69      3.02   \n",
       "2018-02-23  22.88  23.37  22.82  22.71  52914.01          0.54      2.42   \n",
       "2018-02-22  22.25  22.76  22.28  22.02  36105.01          0.36      1.64   \n",
       "2018-02-14  21.49  21.99  21.92  21.48  23331.04          0.44      2.05   \n",
       "\n",
       "               ma5    ma10    ma20     v_ma5    v_ma10    v_ma20  turnover  \n",
       "2018-02-27  22.942  22.142  22.875  53782.64  46738.65  55576.11      2.39  \n",
       "2018-02-26  22.406  21.955  22.942  40827.52  42736.34  56007.50      1.53  \n",
       "2018-02-23  21.938  21.929  23.022  35119.58  41871.97  56372.85      1.32  \n",
       "2018-02-22  21.446  21.909  23.137  35397.58  39904.78  60149.60      0.90  \n",
       "2018-02-14  21.366  21.923  23.253  33590.21  42935.74  61716.11      0.58  "
      ]
     },
     "execution_count": 96,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = pd.read_csv(\"./stock_day/stock_day.csv\")\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "metadata": {},
   "outputs": [],
   "source": [
    "p_change = data.p_change"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2018-02-27    2.68\n",
       "2018-02-26    3.02\n",
       "2018-02-23    2.42\n",
       "2018-02-22    1.64\n",
       "2018-02-14    2.05\n",
       "Name: p_change, dtype: float64"
      ]
     },
     "execution_count": 98,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p_change.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "metadata": {},
   "outputs": [],
   "source": [
    "qcut = pd.qcut(p_change, 7,labels=[\"verybad\",\"litter bad\",\"bad\",\"just so so\", \"ok\",\"good\",\"very good\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "very good     92\n",
       "ok            92\n",
       "just so so    92\n",
       "bad           92\n",
       "litter bad    92\n",
       "verybad       92\n",
       "good          91\n",
       "Name: p_change, dtype: int64"
      ]
     },
     "execution_count": 106,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "qcut.value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>verybad</th>\n",
       "      <th>litter bad</th>\n",
       "      <th>bad</th>\n",
       "      <th>just so so</th>\n",
       "      <th>ok</th>\n",
       "      <th>good</th>\n",
       "      <th>very good</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-02-27</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-26</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-23</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-22</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-14</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-13</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-12</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-09</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-08</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-07</th>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            verybad  litter bad  bad  just so so  ok  good  very good\n",
       "2018-02-27        0           0    0           0   0     1          0\n",
       "2018-02-26        0           0    0           0   0     1          0\n",
       "2018-02-23        0           0    0           0   0     1          0\n",
       "2018-02-22        0           0    0           0   1     0          0\n",
       "2018-02-14        0           0    0           0   0     1          0\n",
       "2018-02-13        0           0    0           0   1     0          0\n",
       "2018-02-12        0           0    0           0   0     1          0\n",
       "2018-02-09        1           0    0           0   0     0          0\n",
       "2018-02-08        0           0    0           1   0     0          0\n",
       "2018-02-07        0           1    0           0   0     0          0"
      ]
     },
     "execution_count": 111,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.get_dummies(qcut).head(10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 123,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "open                14.780\n",
       "high                14.780\n",
       "close               13.460\n",
       "low                 13.460\n",
       "volume           78985.850\n",
       "price_change        -1.500\n",
       "p_change           -10.030\n",
       "ma5                 15.080\n",
       "ma10                17.434\n",
       "ma20                18.617\n",
       "v_ma5           109001.300\n",
       "v_ma10          103741.220\n",
       "v_ma20          106218.950\n",
       "turnover             2.700\n",
       "Name: 2015-09-01, dtype: float64"
      ]
     },
     "execution_count": 123,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.loc[\"2015-09-01\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 129,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 方法二自定义分组间距\n",
    "cut = pd.cut(p_change, bins=[-100, -7,-5,-3,0,3,5,7,100])\n",
    "cut_group = cut.value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 130,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0, 3]        215\n",
       "(-3, 0]       188\n",
       "(3, 5]         57\n",
       "(-5, -3]       51\n",
       "(7, 100]       35\n",
       "(5, 7]         35\n",
       "(-100, -7]     34\n",
       "(-7, -5]       28\n",
       "Name: p_change, dtype: int64"
      ]
     },
     "execution_count": 130,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "cut_group"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 137,
   "metadata": {},
   "outputs": [],
   "source": [
    "dummies = pd.get_dummies(cut, prefix=\"change\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 152,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nVPL/AbI8rYRdlkQLAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "p_change.plot(kind=\"hist\",bins=300, grid=True,color=\"r\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 153,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 数据的合并"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 157,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>open</th>\n",
       "      <th>high</th>\n",
       "      <th>close</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>price_change</th>\n",
       "      <th>p_change</th>\n",
       "      <th>ma5</th>\n",
       "      <th>ma10</th>\n",
       "      <th>ma20</th>\n",
       "      <th>...</th>\n",
       "      <th>v_ma20</th>\n",
       "      <th>turnover</th>\n",
       "      <th>change_(-100, -7]</th>\n",
       "      <th>change_(-7, -5]</th>\n",
       "      <th>change_(-5, -3]</th>\n",
       "      <th>change_(-3, 0]</th>\n",
       "      <th>change_(0, 3]</th>\n",
       "      <th>change_(3, 5]</th>\n",
       "      <th>change_(5, 7]</th>\n",
       "      <th>change_(7, 100]</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-02-27</th>\n",
       "      <td>23.53</td>\n",
       "      <td>25.88</td>\n",
       "      <td>24.16</td>\n",
       "      <td>23.53</td>\n",
       "      <td>95578.03</td>\n",
       "      <td>0.63</td>\n",
       "      <td>2.68</td>\n",
       "      <td>22.942</td>\n",
       "      <td>22.142</td>\n",
       "      <td>22.875</td>\n",
       "      <td>...</td>\n",
       "      <td>55576.11</td>\n",
       "      <td>2.39</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-26</th>\n",
       "      <td>22.80</td>\n",
       "      <td>23.78</td>\n",
       "      <td>23.53</td>\n",
       "      <td>22.80</td>\n",
       "      <td>60985.11</td>\n",
       "      <td>0.69</td>\n",
       "      <td>3.02</td>\n",
       "      <td>22.406</td>\n",
       "      <td>21.955</td>\n",
       "      <td>22.942</td>\n",
       "      <td>...</td>\n",
       "      <td>56007.50</td>\n",
       "      <td>1.53</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-23</th>\n",
       "      <td>22.88</td>\n",
       "      <td>23.37</td>\n",
       "      <td>22.82</td>\n",
       "      <td>22.71</td>\n",
       "      <td>52914.01</td>\n",
       "      <td>0.54</td>\n",
       "      <td>2.42</td>\n",
       "      <td>21.938</td>\n",
       "      <td>21.929</td>\n",
       "      <td>23.022</td>\n",
       "      <td>...</td>\n",
       "      <td>56372.85</td>\n",
       "      <td>1.32</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-22</th>\n",
       "      <td>22.25</td>\n",
       "      <td>22.76</td>\n",
       "      <td>22.28</td>\n",
       "      <td>22.02</td>\n",
       "      <td>36105.01</td>\n",
       "      <td>0.36</td>\n",
       "      <td>1.64</td>\n",
       "      <td>21.446</td>\n",
       "      <td>21.909</td>\n",
       "      <td>23.137</td>\n",
       "      <td>...</td>\n",
       "      <td>60149.60</td>\n",
       "      <td>0.90</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-14</th>\n",
       "      <td>21.49</td>\n",
       "      <td>21.99</td>\n",
       "      <td>21.92</td>\n",
       "      <td>21.48</td>\n",
       "      <td>23331.04</td>\n",
       "      <td>0.44</td>\n",
       "      <td>2.05</td>\n",
       "      <td>21.366</td>\n",
       "      <td>21.923</td>\n",
       "      <td>23.253</td>\n",
       "      <td>...</td>\n",
       "      <td>61716.11</td>\n",
       "      <td>0.58</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 22 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "             open   high  close    low    volume  price_change  p_change  \\\n",
       "2018-02-27  23.53  25.88  24.16  23.53  95578.03          0.63      2.68   \n",
       "2018-02-26  22.80  23.78  23.53  22.80  60985.11          0.69      3.02   \n",
       "2018-02-23  22.88  23.37  22.82  22.71  52914.01          0.54      2.42   \n",
       "2018-02-22  22.25  22.76  22.28  22.02  36105.01          0.36      1.64   \n",
       "2018-02-14  21.49  21.99  21.92  21.48  23331.04          0.44      2.05   \n",
       "\n",
       "               ma5    ma10    ma20       ...           v_ma20  turnover  \\\n",
       "2018-02-27  22.942  22.142  22.875       ...         55576.11      2.39   \n",
       "2018-02-26  22.406  21.955  22.942       ...         56007.50      1.53   \n",
       "2018-02-23  21.938  21.929  23.022       ...         56372.85      1.32   \n",
       "2018-02-22  21.446  21.909  23.137       ...         60149.60      0.90   \n",
       "2018-02-14  21.366  21.923  23.253       ...         61716.11      0.58   \n",
       "\n",
       "            change_(-100, -7]  change_(-7, -5]  change_(-5, -3]  \\\n",
       "2018-02-27                  0                0                0   \n",
       "2018-02-26                  0                0                0   \n",
       "2018-02-23                  0                0                0   \n",
       "2018-02-22                  0                0                0   \n",
       "2018-02-14                  0                0                0   \n",
       "\n",
       "            change_(-3, 0]  change_(0, 3]  change_(3, 5]  change_(5, 7]  \\\n",
       "2018-02-27               0              1              0              0   \n",
       "2018-02-26               0              0              1              0   \n",
       "2018-02-23               0              1              0              0   \n",
       "2018-02-22               0              1              0              0   \n",
       "2018-02-14               0              1              0              0   \n",
       "\n",
       "            change_(7, 100]  \n",
       "2018-02-27                0  \n",
       "2018-02-26                0  \n",
       "2018-02-23                0  \n",
       "2018-02-22                0  \n",
       "2018-02-14                0  \n",
       "\n",
       "[5 rows x 22 columns]"
      ]
     },
     "execution_count": 157,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([data, dummies], axis=1).head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 212,
   "metadata": {},
   "outputs": [],
   "source": [
    "left = pd.DataFrame({'key1': ['K0', 'K0', 'K1', 'K2'],\n",
    "                        'key2': ['K0', 'K1', 'K0', 'K1'],\n",
    "                        'A': ['A0', 'A1', 'A2', 'A3'],\n",
    "                        'B': ['B0', 'B1', 'B2', 'B3']})\n",
    "\n",
    "right = pd.DataFrame({'key1': ['K0', 'K1', 'K1', 'K2'],\n",
    "                        'key2': ['K0', 'K0', 'K0', 'K0'],\n",
    "                        'C': ['C0', 'C1', 'C2', 'C3'],\n",
    "                        'D': ['D0', 'D1', 'D2', 'D3']})\n",
    "\n",
    "# 默认内连接\n",
    "result = pd.merge(left, right, on=['key1', 'key2'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 213,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>key1</th>\n",
       "      <th>key2</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>A0</td>\n",
       "      <td>B0</td>\n",
       "      <td>K0</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>A1</td>\n",
       "      <td>B1</td>\n",
       "      <td>K0</td>\n",
       "      <td>K1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>A3</td>\n",
       "      <td>B3</td>\n",
       "      <td>K2</td>\n",
       "      <td>K1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    A   B key1 key2\n",
       "0  A0  B0   K0   K0\n",
       "1  A1  B1   K0   K1\n",
       "2  A2  B2   K1   K0\n",
       "3  A3  B3   K2   K1"
      ]
     },
     "execution_count": 213,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "left"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 214,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "      <th>key1</th>\n",
       "      <th>key2</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>C0</td>\n",
       "      <td>D0</td>\n",
       "      <td>K0</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>C1</td>\n",
       "      <td>D1</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>C2</td>\n",
       "      <td>D2</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>C3</td>\n",
       "      <td>D3</td>\n",
       "      <td>K2</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    C   D key1 key2\n",
       "0  C0  D0   K0   K0\n",
       "1  C1  D1   K1   K0\n",
       "2  C2  D2   K1   K0\n",
       "3  C3  D3   K2   K0"
      ]
     },
     "execution_count": 214,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "right"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 215,
   "metadata": {},
   "outputs": [],
   "source": [
    "result = pd.merge(left, right, how='left', on=\"key1\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 216,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>key1</th>\n",
       "      <th>key2_x</th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "      <th>key2_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>A0</td>\n",
       "      <td>B0</td>\n",
       "      <td>K0</td>\n",
       "      <td>K0</td>\n",
       "      <td>C0</td>\n",
       "      <td>D0</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>A1</td>\n",
       "      <td>B1</td>\n",
       "      <td>K0</td>\n",
       "      <td>K1</td>\n",
       "      <td>C0</td>\n",
       "      <td>D0</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "      <td>C1</td>\n",
       "      <td>D1</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "      <td>C2</td>\n",
       "      <td>D2</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>A3</td>\n",
       "      <td>B3</td>\n",
       "      <td>K2</td>\n",
       "      <td>K1</td>\n",
       "      <td>C3</td>\n",
       "      <td>D3</td>\n",
       "      <td>K0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    A   B key1 key2_x   C   D key2_y\n",
       "0  A0  B0   K0     K0  C0  D0     K0\n",
       "1  A1  B1   K0     K1  C0  D0     K0\n",
       "2  A2  B2   K1     K0  C1  D1     K0\n",
       "3  A2  B2   K1     K0  C2  D2     K0\n",
       "4  A3  B3   K2     K1  C3  D3     K0"
      ]
     },
     "execution_count": 216,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 217,
   "metadata": {},
   "outputs": [],
   "source": [
    "result = pd.merge(left, right, how='right', on=['key1', 'key2'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 218,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>key1</th>\n",
       "      <th>key2</th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>A0</td>\n",
       "      <td>B0</td>\n",
       "      <td>K0</td>\n",
       "      <td>K0</td>\n",
       "      <td>C0</td>\n",
       "      <td>D0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "      <td>C1</td>\n",
       "      <td>D1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>K0</td>\n",
       "      <td>C2</td>\n",
       "      <td>D2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>K2</td>\n",
       "      <td>K0</td>\n",
       "      <td>C3</td>\n",
       "      <td>D3</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     A    B key1 key2   C   D\n",
       "0   A0   B0   K0   K0  C0  D0\n",
       "1   A2   B2   K1   K0  C1  D1\n",
       "2   A2   B2   K1   K0  C2  D2\n",
       "3  NaN  NaN   K2   K0  C3  D3"
      ]
     },
     "execution_count": 218,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 206,
   "metadata": {},
   "outputs": [],
   "source": [
    "result = pd.merge(left, right, how='outer', on=\"key1\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 207,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>key1</th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>A0</td>\n",
       "      <td>B0</td>\n",
       "      <td>K0</td>\n",
       "      <td>C0</td>\n",
       "      <td>D0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>A1</td>\n",
       "      <td>B1</td>\n",
       "      <td>K0</td>\n",
       "      <td>C0</td>\n",
       "      <td>D0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>C1</td>\n",
       "      <td>D1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>A2</td>\n",
       "      <td>B2</td>\n",
       "      <td>K1</td>\n",
       "      <td>C2</td>\n",
       "      <td>D2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>A3</td>\n",
       "      <td>B3</td>\n",
       "      <td>K2</td>\n",
       "      <td>C3</td>\n",
       "      <td>D3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>A4</td>\n",
       "      <td>B4</td>\n",
       "      <td>K3</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>K4</td>\n",
       "      <td>C5</td>\n",
       "      <td>D5</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     A    B key1    C    D\n",
       "0   A0   B0   K0   C0   D0\n",
       "1   A1   B1   K0   C0   D0\n",
       "2   A2   B2   K1   C1   D1\n",
       "3   A2   B2   K1   C2   D2\n",
       "4   A3   B3   K2   C3   D3\n",
       "5   A4   B4   K3  NaN  NaN\n",
       "6  NaN  NaN   K4   C5   D5"
      ]
     },
     "execution_count": 207,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 205,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Help on function merge in module pandas.core.reshape.merge:\n",
      "\n",
      "merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), copy=True, indicator=False)\n",
      "    Merge DataFrame objects by performing a database-style join operation by\n",
      "    columns or indexes.\n",
      "    \n",
      "    If joining columns on columns, the DataFrame indexes *will be\n",
      "    ignored*. Otherwise if joining indexes on indexes or indexes on a column or\n",
      "    columns, the index will be passed on.\n",
      "    \n",
      "    Parameters\n",
      "    ----------\n",
      "    left : DataFrame\n",
      "    right : DataFrame\n",
      "    how : {'left', 'right', 'outer', 'inner'}, default 'inner'\n",
      "        * left: use only keys from left frame, similar to a SQL left outer join;\n",
      "          preserve key order\n",
      "        * right: use only keys from right frame, similar to a SQL right outer join;\n",
      "          preserve key order\n",
      "        * outer: use union of keys from both frames, similar to a SQL full outer\n",
      "          join; sort keys lexicographically\n",
      "        * inner: use intersection of keys from both frames, similar to a SQL inner\n",
      "          join; preserve the order of the left keys\n",
      "    on : label or list\n",
      "        Field names to join on. Must be found in both DataFrames. If on is\n",
      "        None and not merging on indexes, then it merges on the intersection of\n",
      "        the columns by default.\n",
      "    left_on : label or list, or array-like\n",
      "        Field names to join on in left DataFrame. Can be a vector or list of\n",
      "        vectors of the length of the DataFrame to use a particular vector as\n",
      "        the join key instead of columns\n",
      "    right_on : label or list, or array-like\n",
      "        Field names to join on in right DataFrame or vector/list of vectors per\n",
      "        left_on docs\n",
      "    left_index : boolean, default False\n",
      "        Use the index from the left DataFrame as the join key(s). If it is a\n",
      "        MultiIndex, the number of keys in the other DataFrame (either the index\n",
      "        or a number of columns) must match the number of levels\n",
      "    right_index : boolean, default False\n",
      "        Use the index from the right DataFrame as the join key. Same caveats as\n",
      "        left_index\n",
      "    sort : boolean, default False\n",
      "        Sort the join keys lexicographically in the result DataFrame. If False,\n",
      "        the order of the join keys depends on the join type (how keyword)\n",
      "    suffixes : 2-length sequence (tuple, list, ...)\n",
      "        Suffix to apply to overlapping column names in the left and right\n",
      "        side, respectively\n",
      "    copy : boolean, default True\n",
      "        If False, do not copy data unnecessarily\n",
      "    indicator : boolean or string, default False\n",
      "        If True, adds a column to output DataFrame called \"_merge\" with\n",
      "        information on the source of each row.\n",
      "        If string, column with information on source of each row will be added to\n",
      "        output DataFrame, and column will be named value of string.\n",
      "        Information column is Categorical-type and takes on a value of \"left_only\"\n",
      "        for observations whose merge key only appears in 'left' DataFrame,\n",
      "        \"right_only\" for observations whose merge key only appears in 'right'\n",
      "        DataFrame, and \"both\" if the observation's merge key is found in both.\n",
      "    \n",
      "        .. versionadded:: 0.17.0\n",
      "    \n",
      "    Examples\n",
      "    --------\n",
      "    \n",
      "    >>> A              >>> B\n",
      "        lkey value         rkey value\n",
      "    0   foo  1         0   foo  5\n",
      "    1   bar  2         1   bar  6\n",
      "    2   baz  3         2   qux  7\n",
      "    3   foo  4         3   bar  8\n",
      "    \n",
      "    >>> A.merge(B, left_on='lkey', right_on='rkey', how='outer')\n",
      "       lkey  value_x  rkey  value_y\n",
      "    0  foo   1        foo   5\n",
      "    1  foo   4        foo   5\n",
      "    2  bar   2        bar   6\n",
      "    3  bar   2        bar   8\n",
      "    4  baz   3        NaN   NaN\n",
      "    5  NaN   NaN      qux   7\n",
      "    \n",
      "    Returns\n",
      "    -------\n",
      "    merged : DataFrame\n",
      "        The output type will the be same as 'left', if it is a subclass\n",
      "        of DataFrame.\n",
      "    \n",
      "    See also\n",
      "    --------\n",
      "    merge_ordered\n",
      "    merge_asof\n",
      "\n"
     ]
    }
   ],
   "source": [
    "help(pd.merge)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 219,
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_data = pd.read_csv(\"./stock_day/stock_day.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 221,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>open</th>\n",
       "      <th>high</th>\n",
       "      <th>close</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>price_change</th>\n",
       "      <th>p_change</th>\n",
       "      <th>ma5</th>\n",
       "      <th>ma10</th>\n",
       "      <th>ma20</th>\n",
       "      <th>v_ma5</th>\n",
       "      <th>v_ma10</th>\n",
       "      <th>v_ma20</th>\n",
       "      <th>turnover</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-02-27</th>\n",
       "      <td>23.53</td>\n",
       "      <td>25.88</td>\n",
       "      <td>24.16</td>\n",
       "      <td>23.53</td>\n",
       "      <td>95578.03</td>\n",
       "      <td>0.63</td>\n",
       "      <td>2.68</td>\n",
       "      <td>22.942</td>\n",
       "      <td>22.142</td>\n",
       "      <td>22.875</td>\n",
       "      <td>53782.64</td>\n",
       "      <td>46738.65</td>\n",
       "      <td>55576.11</td>\n",
       "      <td>2.39</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-26</th>\n",
       "      <td>22.80</td>\n",
       "      <td>23.78</td>\n",
       "      <td>23.53</td>\n",
       "      <td>22.80</td>\n",
       "      <td>60985.11</td>\n",
       "      <td>0.69</td>\n",
       "      <td>3.02</td>\n",
       "      <td>22.406</td>\n",
       "      <td>21.955</td>\n",
       "      <td>22.942</td>\n",
       "      <td>40827.52</td>\n",
       "      <td>42736.34</td>\n",
       "      <td>56007.50</td>\n",
       "      <td>1.53</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-23</th>\n",
       "      <td>22.88</td>\n",
       "      <td>23.37</td>\n",
       "      <td>22.82</td>\n",
       "      <td>22.71</td>\n",
       "      <td>52914.01</td>\n",
       "      <td>0.54</td>\n",
       "      <td>2.42</td>\n",
       "      <td>21.938</td>\n",
       "      <td>21.929</td>\n",
       "      <td>23.022</td>\n",
       "      <td>35119.58</td>\n",
       "      <td>41871.97</td>\n",
       "      <td>56372.85</td>\n",
       "      <td>1.32</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-22</th>\n",
       "      <td>22.25</td>\n",
       "      <td>22.76</td>\n",
       "      <td>22.28</td>\n",
       "      <td>22.02</td>\n",
       "      <td>36105.01</td>\n",
       "      <td>0.36</td>\n",
       "      <td>1.64</td>\n",
       "      <td>21.446</td>\n",
       "      <td>21.909</td>\n",
       "      <td>23.137</td>\n",
       "      <td>35397.58</td>\n",
       "      <td>39904.78</td>\n",
       "      <td>60149.60</td>\n",
       "      <td>0.90</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-14</th>\n",
       "      <td>21.49</td>\n",
       "      <td>21.99</td>\n",
       "      <td>21.92</td>\n",
       "      <td>21.48</td>\n",
       "      <td>23331.04</td>\n",
       "      <td>0.44</td>\n",
       "      <td>2.05</td>\n",
       "      <td>21.366</td>\n",
       "      <td>21.923</td>\n",
       "      <td>23.253</td>\n",
       "      <td>33590.21</td>\n",
       "      <td>42935.74</td>\n",
       "      <td>61716.11</td>\n",
       "      <td>0.58</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             open   high  close    low    volume  price_change  p_change  \\\n",
       "2018-02-27  23.53  25.88  24.16  23.53  95578.03          0.63      2.68   \n",
       "2018-02-26  22.80  23.78  23.53  22.80  60985.11          0.69      3.02   \n",
       "2018-02-23  22.88  23.37  22.82  22.71  52914.01          0.54      2.42   \n",
       "2018-02-22  22.25  22.76  22.28  22.02  36105.01          0.36      1.64   \n",
       "2018-02-14  21.49  21.99  21.92  21.48  23331.04          0.44      2.05   \n",
       "\n",
       "               ma5    ma10    ma20     v_ma5    v_ma10    v_ma20  turnover  \n",
       "2018-02-27  22.942  22.142  22.875  53782.64  46738.65  55576.11      2.39  \n",
       "2018-02-26  22.406  21.955  22.942  40827.52  42736.34  56007.50      1.53  \n",
       "2018-02-23  21.938  21.929  23.022  35119.58  41871.97  56372.85      1.32  \n",
       "2018-02-22  21.446  21.909  23.137  35397.58  39904.78  60149.60      0.90  \n",
       "2018-02-14  21.366  21.923  23.253  33590.21  42935.74  61716.11      0.58  "
      ]
     },
     "execution_count": 221,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 222,
   "metadata": {},
   "outputs": [],
   "source": [
    "date = pd.to_datetime(stock_data.index)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 224,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Int64Index([1, 0, 4, 3, 2, 1, 0, 4, 3, 2,\n",
       "            ...\n",
       "            4, 3, 2, 1, 0, 4, 3, 2, 1, 0],\n",
       "           dtype='int64', length=643)"
      ]
     },
     "execution_count": 224,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "date.weekday"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 225,
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_data[\"weekday\"] = date.weekday"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 232,
   "metadata": {},
   "outputs": [],
   "source": [
    "stock_data['postive_negative'] = np.where(stock_data.p_change > 0, 1, 0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 233,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>open</th>\n",
       "      <th>high</th>\n",
       "      <th>close</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>price_change</th>\n",
       "      <th>p_change</th>\n",
       "      <th>ma5</th>\n",
       "      <th>ma10</th>\n",
       "      <th>ma20</th>\n",
       "      <th>v_ma5</th>\n",
       "      <th>v_ma10</th>\n",
       "      <th>v_ma20</th>\n",
       "      <th>turnover</th>\n",
       "      <th>weekday</th>\n",
       "      <th>postive_negative</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-02-27</th>\n",
       "      <td>23.53</td>\n",
       "      <td>25.88</td>\n",
       "      <td>24.16</td>\n",
       "      <td>23.53</td>\n",
       "      <td>95578.03</td>\n",
       "      <td>0.63</td>\n",
       "      <td>2.68</td>\n",
       "      <td>22.942</td>\n",
       "      <td>22.142</td>\n",
       "      <td>22.875</td>\n",
       "      <td>53782.64</td>\n",
       "      <td>46738.65</td>\n",
       "      <td>55576.11</td>\n",
       "      <td>2.39</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-26</th>\n",
       "      <td>22.80</td>\n",
       "      <td>23.78</td>\n",
       "      <td>23.53</td>\n",
       "      <td>22.80</td>\n",
       "      <td>60985.11</td>\n",
       "      <td>0.69</td>\n",
       "      <td>3.02</td>\n",
       "      <td>22.406</td>\n",
       "      <td>21.955</td>\n",
       "      <td>22.942</td>\n",
       "      <td>40827.52</td>\n",
       "      <td>42736.34</td>\n",
       "      <td>56007.50</td>\n",
       "      <td>1.53</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-23</th>\n",
       "      <td>22.88</td>\n",
       "      <td>23.37</td>\n",
       "      <td>22.82</td>\n",
       "      <td>22.71</td>\n",
       "      <td>52914.01</td>\n",
       "      <td>0.54</td>\n",
       "      <td>2.42</td>\n",
       "      <td>21.938</td>\n",
       "      <td>21.929</td>\n",
       "      <td>23.022</td>\n",
       "      <td>35119.58</td>\n",
       "      <td>41871.97</td>\n",
       "      <td>56372.85</td>\n",
       "      <td>1.32</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-22</th>\n",
       "      <td>22.25</td>\n",
       "      <td>22.76</td>\n",
       "      <td>22.28</td>\n",
       "      <td>22.02</td>\n",
       "      <td>36105.01</td>\n",
       "      <td>0.36</td>\n",
       "      <td>1.64</td>\n",
       "      <td>21.446</td>\n",
       "      <td>21.909</td>\n",
       "      <td>23.137</td>\n",
       "      <td>35397.58</td>\n",
       "      <td>39904.78</td>\n",
       "      <td>60149.60</td>\n",
       "      <td>0.90</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-14</th>\n",
       "      <td>21.49</td>\n",
       "      <td>21.99</td>\n",
       "      <td>21.92</td>\n",
       "      <td>21.48</td>\n",
       "      <td>23331.04</td>\n",
       "      <td>0.44</td>\n",
       "      <td>2.05</td>\n",
       "      <td>21.366</td>\n",
       "      <td>21.923</td>\n",
       "      <td>23.253</td>\n",
       "      <td>33590.21</td>\n",
       "      <td>42935.74</td>\n",
       "      <td>61716.11</td>\n",
       "      <td>0.58</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-13</th>\n",
       "      <td>21.40</td>\n",
       "      <td>21.90</td>\n",
       "      <td>21.48</td>\n",
       "      <td>21.31</td>\n",
       "      <td>30802.45</td>\n",
       "      <td>0.28</td>\n",
       "      <td>1.32</td>\n",
       "      <td>21.342</td>\n",
       "      <td>22.103</td>\n",
       "      <td>23.387</td>\n",
       "      <td>39694.65</td>\n",
       "      <td>45518.14</td>\n",
       "      <td>65161.68</td>\n",
       "      <td>0.77</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-12</th>\n",
       "      <td>20.70</td>\n",
       "      <td>21.40</td>\n",
       "      <td>21.19</td>\n",
       "      <td>20.63</td>\n",
       "      <td>32445.39</td>\n",
       "      <td>0.82</td>\n",
       "      <td>4.03</td>\n",
       "      <td>21.504</td>\n",
       "      <td>22.338</td>\n",
       "      <td>23.533</td>\n",
       "      <td>44645.16</td>\n",
       "      <td>45679.94</td>\n",
       "      <td>68686.33</td>\n",
       "      <td>0.81</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-09</th>\n",
       "      <td>21.20</td>\n",
       "      <td>21.46</td>\n",
       "      <td>20.36</td>\n",
       "      <td>20.19</td>\n",
       "      <td>54304.01</td>\n",
       "      <td>-1.50</td>\n",
       "      <td>-6.86</td>\n",
       "      <td>21.920</td>\n",
       "      <td>22.596</td>\n",
       "      <td>23.645</td>\n",
       "      <td>48624.36</td>\n",
       "      <td>48982.38</td>\n",
       "      <td>70552.47</td>\n",
       "      <td>1.36</td>\n",
       "      <td>4</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-08</th>\n",
       "      <td>21.79</td>\n",
       "      <td>22.09</td>\n",
       "      <td>21.88</td>\n",
       "      <td>21.75</td>\n",
       "      <td>27068.16</td>\n",
       "      <td>0.09</td>\n",
       "      <td>0.41</td>\n",
       "      <td>22.372</td>\n",
       "      <td>23.009</td>\n",
       "      <td>23.839</td>\n",
       "      <td>44411.98</td>\n",
       "      <td>48612.16</td>\n",
       "      <td>73852.45</td>\n",
       "      <td>0.68</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-07</th>\n",
       "      <td>22.69</td>\n",
       "      <td>23.11</td>\n",
       "      <td>21.80</td>\n",
       "      <td>21.29</td>\n",
       "      <td>53853.25</td>\n",
       "      <td>-0.50</td>\n",
       "      <td>-2.24</td>\n",
       "      <td>22.480</td>\n",
       "      <td>23.258</td>\n",
       "      <td>23.929</td>\n",
       "      <td>52281.28</td>\n",
       "      <td>56315.11</td>\n",
       "      <td>74925.33</td>\n",
       "      <td>1.35</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-06</th>\n",
       "      <td>22.80</td>\n",
       "      <td>23.55</td>\n",
       "      <td>22.29</td>\n",
       "      <td>22.20</td>\n",
       "      <td>55555.00</td>\n",
       "      <td>-0.97</td>\n",
       "      <td>-4.17</td>\n",
       "      <td>22.864</td>\n",
       "      <td>23.607</td>\n",
       "      <td>24.029</td>\n",
       "      <td>51341.63</td>\n",
       "      <td>64413.58</td>\n",
       "      <td>75738.95</td>\n",
       "      <td>1.39</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-05</th>\n",
       "      <td>22.45</td>\n",
       "      <td>23.39</td>\n",
       "      <td>23.27</td>\n",
       "      <td>22.25</td>\n",
       "      <td>52341.39</td>\n",
       "      <td>0.65</td>\n",
       "      <td>2.87</td>\n",
       "      <td>23.172</td>\n",
       "      <td>23.928</td>\n",
       "      <td>24.112</td>\n",
       "      <td>46714.72</td>\n",
       "      <td>69278.66</td>\n",
       "      <td>77070.00</td>\n",
       "      <td>1.31</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-02</th>\n",
       "      <td>22.40</td>\n",
       "      <td>22.70</td>\n",
       "      <td>22.62</td>\n",
       "      <td>21.53</td>\n",
       "      <td>33242.11</td>\n",
       "      <td>0.20</td>\n",
       "      <td>0.89</td>\n",
       "      <td>23.272</td>\n",
       "      <td>24.114</td>\n",
       "      <td>24.184</td>\n",
       "      <td>49340.40</td>\n",
       "      <td>70873.73</td>\n",
       "      <td>79929.71</td>\n",
       "      <td>0.83</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-02-01</th>\n",
       "      <td>23.71</td>\n",
       "      <td>23.86</td>\n",
       "      <td>22.42</td>\n",
       "      <td>22.22</td>\n",
       "      <td>66414.64</td>\n",
       "      <td>-1.30</td>\n",
       "      <td>-5.48</td>\n",
       "      <td>23.646</td>\n",
       "      <td>24.365</td>\n",
       "      <td>24.279</td>\n",
       "      <td>52812.35</td>\n",
       "      <td>80394.43</td>\n",
       "      <td>88480.92</td>\n",
       "      <td>1.66</td>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-31</th>\n",
       "      <td>23.85</td>\n",
       "      <td>23.98</td>\n",
       "      <td>23.72</td>\n",
       "      <td>23.31</td>\n",
       "      <td>49155.02</td>\n",
       "      <td>-0.11</td>\n",
       "      <td>-0.46</td>\n",
       "      <td>24.036</td>\n",
       "      <td>24.583</td>\n",
       "      <td>24.411</td>\n",
       "      <td>60348.94</td>\n",
       "      <td>80496.48</td>\n",
       "      <td>91666.75</td>\n",
       "      <td>1.23</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-30</th>\n",
       "      <td>23.71</td>\n",
       "      <td>24.08</td>\n",
       "      <td>23.83</td>\n",
       "      <td>23.70</td>\n",
       "      <td>32420.43</td>\n",
       "      <td>0.05</td>\n",
       "      <td>0.21</td>\n",
       "      <td>24.350</td>\n",
       "      <td>24.671</td>\n",
       "      <td>24.365</td>\n",
       "      <td>77485.53</td>\n",
       "      <td>84805.23</td>\n",
       "      <td>92943.35</td>\n",
       "      <td>0.81</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-29</th>\n",
       "      <td>24.40</td>\n",
       "      <td>24.63</td>\n",
       "      <td>23.77</td>\n",
       "      <td>23.72</td>\n",
       "      <td>65469.81</td>\n",
       "      <td>-0.73</td>\n",
       "      <td>-2.98</td>\n",
       "      <td>24.684</td>\n",
       "      <td>24.728</td>\n",
       "      <td>24.294</td>\n",
       "      <td>91842.60</td>\n",
       "      <td>91692.73</td>\n",
       "      <td>93456.22</td>\n",
       "      <td>1.64</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-26</th>\n",
       "      <td>24.27</td>\n",
       "      <td>24.74</td>\n",
       "      <td>24.49</td>\n",
       "      <td>24.22</td>\n",
       "      <td>50601.83</td>\n",
       "      <td>0.11</td>\n",
       "      <td>0.45</td>\n",
       "      <td>24.956</td>\n",
       "      <td>24.694</td>\n",
       "      <td>24.221</td>\n",
       "      <td>92407.05</td>\n",
       "      <td>92122.56</td>\n",
       "      <td>91980.51</td>\n",
       "      <td>1.27</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-25</th>\n",
       "      <td>24.99</td>\n",
       "      <td>24.99</td>\n",
       "      <td>24.37</td>\n",
       "      <td>24.23</td>\n",
       "      <td>104097.59</td>\n",
       "      <td>-0.93</td>\n",
       "      <td>-3.68</td>\n",
       "      <td>25.084</td>\n",
       "      <td>24.669</td>\n",
       "      <td>24.109</td>\n",
       "      <td>107976.51</td>\n",
       "      <td>99092.73</td>\n",
       "      <td>92262.67</td>\n",
       "      <td>2.61</td>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-24</th>\n",
       "      <td>25.49</td>\n",
       "      <td>26.28</td>\n",
       "      <td>25.29</td>\n",
       "      <td>25.20</td>\n",
       "      <td>134838.00</td>\n",
       "      <td>-0.20</td>\n",
       "      <td>-0.79</td>\n",
       "      <td>25.130</td>\n",
       "      <td>24.599</td>\n",
       "      <td>23.997</td>\n",
       "      <td>100644.02</td>\n",
       "      <td>93535.55</td>\n",
       "      <td>89522.22</td>\n",
       "      <td>3.37</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-23</th>\n",
       "      <td>25.15</td>\n",
       "      <td>25.53</td>\n",
       "      <td>25.50</td>\n",
       "      <td>24.93</td>\n",
       "      <td>104205.76</td>\n",
       "      <td>0.39</td>\n",
       "      <td>1.55</td>\n",
       "      <td>24.992</td>\n",
       "      <td>24.450</td>\n",
       "      <td>23.844</td>\n",
       "      <td>92124.92</td>\n",
       "      <td>87064.33</td>\n",
       "      <td>85876.80</td>\n",
       "      <td>2.61</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-22</th>\n",
       "      <td>25.14</td>\n",
       "      <td>25.40</td>\n",
       "      <td>25.13</td>\n",
       "      <td>24.75</td>\n",
       "      <td>68292.08</td>\n",
       "      <td>-0.01</td>\n",
       "      <td>-0.04</td>\n",
       "      <td>24.772</td>\n",
       "      <td>24.296</td>\n",
       "      <td>23.644</td>\n",
       "      <td>91542.85</td>\n",
       "      <td>84861.33</td>\n",
       "      <td>84970.00</td>\n",
       "      <td>1.71</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-19</th>\n",
       "      <td>24.60</td>\n",
       "      <td>25.34</td>\n",
       "      <td>25.13</td>\n",
       "      <td>24.42</td>\n",
       "      <td>128449.11</td>\n",
       "      <td>0.53</td>\n",
       "      <td>2.15</td>\n",
       "      <td>24.432</td>\n",
       "      <td>24.254</td>\n",
       "      <td>23.537</td>\n",
       "      <td>91838.07</td>\n",
       "      <td>88985.70</td>\n",
       "      <td>82975.10</td>\n",
       "      <td>3.21</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-18</th>\n",
       "      <td>24.40</td>\n",
       "      <td>24.88</td>\n",
       "      <td>24.60</td>\n",
       "      <td>24.30</td>\n",
       "      <td>67435.14</td>\n",
       "      <td>0.01</td>\n",
       "      <td>0.04</td>\n",
       "      <td>24.254</td>\n",
       "      <td>24.192</td>\n",
       "      <td>23.441</td>\n",
       "      <td>90208.95</td>\n",
       "      <td>96567.41</td>\n",
       "      <td>78252.92</td>\n",
       "      <td>1.69</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-17</th>\n",
       "      <td>24.42</td>\n",
       "      <td>24.92</td>\n",
       "      <td>24.60</td>\n",
       "      <td>23.80</td>\n",
       "      <td>92242.51</td>\n",
       "      <td>0.20</td>\n",
       "      <td>0.82</td>\n",
       "      <td>24.068</td>\n",
       "      <td>24.239</td>\n",
       "      <td>23.378</td>\n",
       "      <td>86427.08</td>\n",
       "      <td>102837.01</td>\n",
       "      <td>77049.61</td>\n",
       "      <td>2.31</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-16</th>\n",
       "      <td>23.40</td>\n",
       "      <td>24.60</td>\n",
       "      <td>24.40</td>\n",
       "      <td>23.30</td>\n",
       "      <td>101295.42</td>\n",
       "      <td>0.96</td>\n",
       "      <td>4.10</td>\n",
       "      <td>23.908</td>\n",
       "      <td>24.058</td>\n",
       "      <td>23.321</td>\n",
       "      <td>82003.73</td>\n",
       "      <td>101081.47</td>\n",
       "      <td>74590.92</td>\n",
       "      <td>2.54</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-15</th>\n",
       "      <td>24.01</td>\n",
       "      <td>24.23</td>\n",
       "      <td>23.43</td>\n",
       "      <td>23.30</td>\n",
       "      <td>69768.17</td>\n",
       "      <td>-0.80</td>\n",
       "      <td>-3.30</td>\n",
       "      <td>23.820</td>\n",
       "      <td>23.860</td>\n",
       "      <td>23.257</td>\n",
       "      <td>78179.81</td>\n",
       "      <td>95219.71</td>\n",
       "      <td>71006.65</td>\n",
       "      <td>1.75</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-12</th>\n",
       "      <td>23.70</td>\n",
       "      <td>25.15</td>\n",
       "      <td>24.24</td>\n",
       "      <td>23.42</td>\n",
       "      <td>120303.53</td>\n",
       "      <td>0.56</td>\n",
       "      <td>2.37</td>\n",
       "      <td>24.076</td>\n",
       "      <td>23.748</td>\n",
       "      <td>23.236</td>\n",
       "      <td>86133.33</td>\n",
       "      <td>91838.46</td>\n",
       "      <td>69690.35</td>\n",
       "      <td>3.01</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-11</th>\n",
       "      <td>23.67</td>\n",
       "      <td>23.85</td>\n",
       "      <td>23.67</td>\n",
       "      <td>23.21</td>\n",
       "      <td>48525.75</td>\n",
       "      <td>-0.12</td>\n",
       "      <td>-0.50</td>\n",
       "      <td>24.130</td>\n",
       "      <td>23.548</td>\n",
       "      <td>23.197</td>\n",
       "      <td>102925.87</td>\n",
       "      <td>85432.61</td>\n",
       "      <td>65928.23</td>\n",
       "      <td>1.21</td>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-01-10</th>\n",
       "      <td>24.10</td>\n",
       "      <td>24.60</td>\n",
       "      <td>23.80</td>\n",
       "      <td>23.40</td>\n",
       "      <td>70125.79</td>\n",
       "      <td>-0.14</td>\n",
       "      <td>-0.58</td>\n",
       "      <td>24.410</td>\n",
       "      <td>23.394</td>\n",
       "      <td>23.204</td>\n",
       "      <td>119246.95</td>\n",
       "      <td>85508.89</td>\n",
       "      <td>66934.89</td>\n",
       "      <td>1.76</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-13</th>\n",
       "      <td>19.60</td>\n",
       "      <td>21.30</td>\n",
       "      <td>21.13</td>\n",
       "      <td>19.50</td>\n",
       "      <td>171822.69</td>\n",
       "      <td>1.70</td>\n",
       "      <td>8.75</td>\n",
       "      <td>19.228</td>\n",
       "      <td>17.812</td>\n",
       "      <td>16.563</td>\n",
       "      <td>149620.34</td>\n",
       "      <td>114456.84</td>\n",
       "      <td>111752.31</td>\n",
       "      <td>5.88</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-10</th>\n",
       "      <td>19.55</td>\n",
       "      <td>19.89</td>\n",
       "      <td>19.43</td>\n",
       "      <td>19.20</td>\n",
       "      <td>112962.15</td>\n",
       "      <td>-0.19</td>\n",
       "      <td>-0.97</td>\n",
       "      <td>18.334</td>\n",
       "      <td>17.276</td>\n",
       "      <td>16.230</td>\n",
       "      <td>133648.38</td>\n",
       "      <td>109309.78</td>\n",
       "      <td>106228.29</td>\n",
       "      <td>3.87</td>\n",
       "      <td>4</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-09</th>\n",
       "      <td>18.28</td>\n",
       "      <td>19.89</td>\n",
       "      <td>19.62</td>\n",
       "      <td>18.02</td>\n",
       "      <td>183119.05</td>\n",
       "      <td>1.20</td>\n",
       "      <td>6.51</td>\n",
       "      <td>17.736</td>\n",
       "      <td>16.826</td>\n",
       "      <td>15.964</td>\n",
       "      <td>124323.21</td>\n",
       "      <td>106501.34</td>\n",
       "      <td>104829.10</td>\n",
       "      <td>6.27</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-08</th>\n",
       "      <td>17.60</td>\n",
       "      <td>18.53</td>\n",
       "      <td>18.42</td>\n",
       "      <td>17.60</td>\n",
       "      <td>157725.97</td>\n",
       "      <td>0.88</td>\n",
       "      <td>5.02</td>\n",
       "      <td>17.070</td>\n",
       "      <td>16.394</td>\n",
       "      <td>15.698</td>\n",
       "      <td>101421.29</td>\n",
       "      <td>97906.88</td>\n",
       "      <td>101658.57</td>\n",
       "      <td>5.40</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-07</th>\n",
       "      <td>16.54</td>\n",
       "      <td>17.98</td>\n",
       "      <td>17.54</td>\n",
       "      <td>16.50</td>\n",
       "      <td>122471.85</td>\n",
       "      <td>0.88</td>\n",
       "      <td>5.28</td>\n",
       "      <td>16.620</td>\n",
       "      <td>16.120</td>\n",
       "      <td>15.510</td>\n",
       "      <td>86769.62</td>\n",
       "      <td>97473.29</td>\n",
       "      <td>98832.94</td>\n",
       "      <td>4.19</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-03</th>\n",
       "      <td>16.44</td>\n",
       "      <td>16.77</td>\n",
       "      <td>16.66</td>\n",
       "      <td>16.25</td>\n",
       "      <td>91962.88</td>\n",
       "      <td>0.22</td>\n",
       "      <td>1.34</td>\n",
       "      <td>16.396</td>\n",
       "      <td>15.904</td>\n",
       "      <td>15.348</td>\n",
       "      <td>79293.34</td>\n",
       "      <td>94172.24</td>\n",
       "      <td>99956.63</td>\n",
       "      <td>3.15</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-02</th>\n",
       "      <td>16.21</td>\n",
       "      <td>16.50</td>\n",
       "      <td>16.44</td>\n",
       "      <td>16.21</td>\n",
       "      <td>66336.32</td>\n",
       "      <td>0.15</td>\n",
       "      <td>0.92</td>\n",
       "      <td>16.218</td>\n",
       "      <td>15.772</td>\n",
       "      <td>15.229</td>\n",
       "      <td>84971.19</td>\n",
       "      <td>92655.96</td>\n",
       "      <td>104350.08</td>\n",
       "      <td>2.27</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-04-01</th>\n",
       "      <td>16.18</td>\n",
       "      <td>16.48</td>\n",
       "      <td>16.29</td>\n",
       "      <td>16.00</td>\n",
       "      <td>68609.42</td>\n",
       "      <td>0.12</td>\n",
       "      <td>0.74</td>\n",
       "      <td>15.916</td>\n",
       "      <td>15.666</td>\n",
       "      <td>15.065</td>\n",
       "      <td>88679.47</td>\n",
       "      <td>95386.75</td>\n",
       "      <td>105692.28</td>\n",
       "      <td>2.35</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-31</th>\n",
       "      <td>16.78</td>\n",
       "      <td>16.88</td>\n",
       "      <td>16.17</td>\n",
       "      <td>16.07</td>\n",
       "      <td>84467.62</td>\n",
       "      <td>-0.25</td>\n",
       "      <td>-1.52</td>\n",
       "      <td>15.718</td>\n",
       "      <td>15.568</td>\n",
       "      <td>14.896</td>\n",
       "      <td>94392.47</td>\n",
       "      <td>100679.68</td>\n",
       "      <td>105615.58</td>\n",
       "      <td>2.89</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-30</th>\n",
       "      <td>15.99</td>\n",
       "      <td>16.63</td>\n",
       "      <td>16.42</td>\n",
       "      <td>15.99</td>\n",
       "      <td>85090.45</td>\n",
       "      <td>0.65</td>\n",
       "      <td>4.12</td>\n",
       "      <td>15.620</td>\n",
       "      <td>15.469</td>\n",
       "      <td>14.722</td>\n",
       "      <td>108176.96</td>\n",
       "      <td>108109.99</td>\n",
       "      <td>108345.78</td>\n",
       "      <td>2.91</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-27</th>\n",
       "      <td>14.90</td>\n",
       "      <td>15.86</td>\n",
       "      <td>15.77</td>\n",
       "      <td>14.90</td>\n",
       "      <td>120352.13</td>\n",
       "      <td>0.84</td>\n",
       "      <td>5.63</td>\n",
       "      <td>15.412</td>\n",
       "      <td>15.314</td>\n",
       "      <td>14.527</td>\n",
       "      <td>109051.14</td>\n",
       "      <td>109047.78</td>\n",
       "      <td>108905.84</td>\n",
       "      <td>4.12</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-26</th>\n",
       "      <td>15.14</td>\n",
       "      <td>15.35</td>\n",
       "      <td>14.93</td>\n",
       "      <td>14.91</td>\n",
       "      <td>84877.75</td>\n",
       "      <td>-0.37</td>\n",
       "      <td>-2.42</td>\n",
       "      <td>15.326</td>\n",
       "      <td>15.184</td>\n",
       "      <td>14.462</td>\n",
       "      <td>100340.74</td>\n",
       "      <td>103146.79</td>\n",
       "      <td>108303.41</td>\n",
       "      <td>2.91</td>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-25</th>\n",
       "      <td>15.97</td>\n",
       "      <td>15.97</td>\n",
       "      <td>15.30</td>\n",
       "      <td>15.18</td>\n",
       "      <td>97174.40</td>\n",
       "      <td>-0.38</td>\n",
       "      <td>-2.42</td>\n",
       "      <td>15.416</td>\n",
       "      <td>15.102</td>\n",
       "      <td>14.436</td>\n",
       "      <td>102094.02</td>\n",
       "      <td>103156.85</td>\n",
       "      <td>109604.83</td>\n",
       "      <td>3.33</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-24</th>\n",
       "      <td>15.38</td>\n",
       "      <td>16.16</td>\n",
       "      <td>15.68</td>\n",
       "      <td>15.28</td>\n",
       "      <td>153390.08</td>\n",
       "      <td>0.30</td>\n",
       "      <td>1.95</td>\n",
       "      <td>15.418</td>\n",
       "      <td>15.002</td>\n",
       "      <td>14.385</td>\n",
       "      <td>106966.89</td>\n",
       "      <td>105410.25</td>\n",
       "      <td>110336.03</td>\n",
       "      <td>5.25</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-23</th>\n",
       "      <td>15.34</td>\n",
       "      <td>15.56</td>\n",
       "      <td>15.38</td>\n",
       "      <td>15.25</td>\n",
       "      <td>89461.32</td>\n",
       "      <td>0.04</td>\n",
       "      <td>0.26</td>\n",
       "      <td>15.318</td>\n",
       "      <td>14.899</td>\n",
       "      <td>14.304</td>\n",
       "      <td>108043.02</td>\n",
       "      <td>100192.60</td>\n",
       "      <td>107645.16</td>\n",
       "      <td>3.06</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-20</th>\n",
       "      <td>15.38</td>\n",
       "      <td>15.48</td>\n",
       "      <td>15.34</td>\n",
       "      <td>15.18</td>\n",
       "      <td>76800.13</td>\n",
       "      <td>-0.04</td>\n",
       "      <td>-0.26</td>\n",
       "      <td>15.216</td>\n",
       "      <td>14.792</td>\n",
       "      <td>14.232</td>\n",
       "      <td>109044.42</td>\n",
       "      <td>105741.03</td>\n",
       "      <td>108857.41</td>\n",
       "      <td>2.63</td>\n",
       "      <td>4</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-19</th>\n",
       "      <td>15.20</td>\n",
       "      <td>15.64</td>\n",
       "      <td>15.38</td>\n",
       "      <td>15.11</td>\n",
       "      <td>93644.19</td>\n",
       "      <td>0.07</td>\n",
       "      <td>0.46</td>\n",
       "      <td>15.042</td>\n",
       "      <td>14.686</td>\n",
       "      <td>14.153</td>\n",
       "      <td>105952.84</td>\n",
       "      <td>116044.19</td>\n",
       "      <td>111147.22</td>\n",
       "      <td>3.21</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-18</th>\n",
       "      <td>15.18</td>\n",
       "      <td>15.66</td>\n",
       "      <td>15.31</td>\n",
       "      <td>15.02</td>\n",
       "      <td>121538.71</td>\n",
       "      <td>0.13</td>\n",
       "      <td>0.86</td>\n",
       "      <td>14.788</td>\n",
       "      <td>14.464</td>\n",
       "      <td>14.058</td>\n",
       "      <td>104219.67</td>\n",
       "      <td>115997.81</td>\n",
       "      <td>112493.60</td>\n",
       "      <td>4.16</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-17</th>\n",
       "      <td>14.90</td>\n",
       "      <td>15.44</td>\n",
       "      <td>15.18</td>\n",
       "      <td>14.63</td>\n",
       "      <td>158770.77</td>\n",
       "      <td>0.31</td>\n",
       "      <td>2.08</td>\n",
       "      <td>14.586</td>\n",
       "      <td>14.223</td>\n",
       "      <td>13.954</td>\n",
       "      <td>103853.62</td>\n",
       "      <td>110551.48</td>\n",
       "      <td>111739.85</td>\n",
       "      <td>5.43</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-16</th>\n",
       "      <td>14.52</td>\n",
       "      <td>15.05</td>\n",
       "      <td>14.87</td>\n",
       "      <td>14.51</td>\n",
       "      <td>94468.30</td>\n",
       "      <td>0.40</td>\n",
       "      <td>2.76</td>\n",
       "      <td>14.480</td>\n",
       "      <td>13.975</td>\n",
       "      <td>13.843</td>\n",
       "      <td>92342.17</td>\n",
       "      <td>108581.56</td>\n",
       "      <td>107464.31</td>\n",
       "      <td>3.23</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-13</th>\n",
       "      <td>14.13</td>\n",
       "      <td>14.50</td>\n",
       "      <td>14.47</td>\n",
       "      <td>14.08</td>\n",
       "      <td>61342.22</td>\n",
       "      <td>0.36</td>\n",
       "      <td>2.55</td>\n",
       "      <td>14.368</td>\n",
       "      <td>13.740</td>\n",
       "      <td>13.740</td>\n",
       "      <td>102437.64</td>\n",
       "      <td>108763.91</td>\n",
       "      <td>108763.91</td>\n",
       "      <td>2.10</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-12</th>\n",
       "      <td>14.11</td>\n",
       "      <td>14.80</td>\n",
       "      <td>14.11</td>\n",
       "      <td>13.95</td>\n",
       "      <td>84978.37</td>\n",
       "      <td>-0.19</td>\n",
       "      <td>-1.33</td>\n",
       "      <td>14.330</td>\n",
       "      <td>13.659</td>\n",
       "      <td>13.659</td>\n",
       "      <td>126135.54</td>\n",
       "      <td>114032.98</td>\n",
       "      <td>114032.98</td>\n",
       "      <td>2.91</td>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-11</th>\n",
       "      <td>14.80</td>\n",
       "      <td>15.08</td>\n",
       "      <td>14.30</td>\n",
       "      <td>14.14</td>\n",
       "      <td>119708.43</td>\n",
       "      <td>-0.35</td>\n",
       "      <td>-2.39</td>\n",
       "      <td>14.140</td>\n",
       "      <td>13.603</td>\n",
       "      <td>13.603</td>\n",
       "      <td>127775.94</td>\n",
       "      <td>117664.81</td>\n",
       "      <td>117664.81</td>\n",
       "      <td>4.10</td>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-10</th>\n",
       "      <td>14.20</td>\n",
       "      <td>14.80</td>\n",
       "      <td>14.65</td>\n",
       "      <td>14.01</td>\n",
       "      <td>101213.51</td>\n",
       "      <td>0.34</td>\n",
       "      <td>2.38</td>\n",
       "      <td>13.860</td>\n",
       "      <td>13.503</td>\n",
       "      <td>13.503</td>\n",
       "      <td>117249.34</td>\n",
       "      <td>117372.87</td>\n",
       "      <td>117372.87</td>\n",
       "      <td>3.46</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-09</th>\n",
       "      <td>14.14</td>\n",
       "      <td>14.85</td>\n",
       "      <td>14.31</td>\n",
       "      <td>13.80</td>\n",
       "      <td>144945.66</td>\n",
       "      <td>0.03</td>\n",
       "      <td>0.21</td>\n",
       "      <td>13.470</td>\n",
       "      <td>13.312</td>\n",
       "      <td>13.312</td>\n",
       "      <td>124820.96</td>\n",
       "      <td>120066.09</td>\n",
       "      <td>120066.09</td>\n",
       "      <td>4.96</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-06</th>\n",
       "      <td>13.17</td>\n",
       "      <td>14.48</td>\n",
       "      <td>14.28</td>\n",
       "      <td>13.13</td>\n",
       "      <td>179831.72</td>\n",
       "      <td>1.12</td>\n",
       "      <td>8.51</td>\n",
       "      <td>13.112</td>\n",
       "      <td>13.112</td>\n",
       "      <td>13.112</td>\n",
       "      <td>115090.18</td>\n",
       "      <td>115090.18</td>\n",
       "      <td>115090.18</td>\n",
       "      <td>6.16</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-05</th>\n",
       "      <td>12.88</td>\n",
       "      <td>13.45</td>\n",
       "      <td>13.16</td>\n",
       "      <td>12.87</td>\n",
       "      <td>93180.39</td>\n",
       "      <td>0.26</td>\n",
       "      <td>2.02</td>\n",
       "      <td>12.820</td>\n",
       "      <td>12.820</td>\n",
       "      <td>12.820</td>\n",
       "      <td>98904.79</td>\n",
       "      <td>98904.79</td>\n",
       "      <td>98904.79</td>\n",
       "      <td>3.19</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-04</th>\n",
       "      <td>12.80</td>\n",
       "      <td>12.92</td>\n",
       "      <td>12.90</td>\n",
       "      <td>12.61</td>\n",
       "      <td>67075.44</td>\n",
       "      <td>0.20</td>\n",
       "      <td>1.57</td>\n",
       "      <td>12.707</td>\n",
       "      <td>12.707</td>\n",
       "      <td>12.707</td>\n",
       "      <td>100812.93</td>\n",
       "      <td>100812.93</td>\n",
       "      <td>100812.93</td>\n",
       "      <td>2.30</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-03</th>\n",
       "      <td>12.52</td>\n",
       "      <td>13.06</td>\n",
       "      <td>12.70</td>\n",
       "      <td>12.52</td>\n",
       "      <td>139071.61</td>\n",
       "      <td>0.18</td>\n",
       "      <td>1.44</td>\n",
       "      <td>12.610</td>\n",
       "      <td>12.610</td>\n",
       "      <td>12.610</td>\n",
       "      <td>117681.67</td>\n",
       "      <td>117681.67</td>\n",
       "      <td>117681.67</td>\n",
       "      <td>4.76</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2015-03-02</th>\n",
       "      <td>12.25</td>\n",
       "      <td>12.67</td>\n",
       "      <td>12.52</td>\n",
       "      <td>12.20</td>\n",
       "      <td>96291.73</td>\n",
       "      <td>0.32</td>\n",
       "      <td>2.62</td>\n",
       "      <td>12.520</td>\n",
       "      <td>12.520</td>\n",
       "      <td>12.520</td>\n",
       "      <td>96291.73</td>\n",
       "      <td>96291.73</td>\n",
       "      <td>96291.73</td>\n",
       "      <td>3.30</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>643 rows × 16 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "             open   high  close    low     volume  price_change  p_change  \\\n",
       "2018-02-27  23.53  25.88  24.16  23.53   95578.03          0.63      2.68   \n",
       "2018-02-26  22.80  23.78  23.53  22.80   60985.11          0.69      3.02   \n",
       "2018-02-23  22.88  23.37  22.82  22.71   52914.01          0.54      2.42   \n",
       "2018-02-22  22.25  22.76  22.28  22.02   36105.01          0.36      1.64   \n",
       "2018-02-14  21.49  21.99  21.92  21.48   23331.04          0.44      2.05   \n",
       "2018-02-13  21.40  21.90  21.48  21.31   30802.45          0.28      1.32   \n",
       "2018-02-12  20.70  21.40  21.19  20.63   32445.39          0.82      4.03   \n",
       "2018-02-09  21.20  21.46  20.36  20.19   54304.01         -1.50     -6.86   \n",
       "2018-02-08  21.79  22.09  21.88  21.75   27068.16          0.09      0.41   \n",
       "2018-02-07  22.69  23.11  21.80  21.29   53853.25         -0.50     -2.24   \n",
       "2018-02-06  22.80  23.55  22.29  22.20   55555.00         -0.97     -4.17   \n",
       "2018-02-05  22.45  23.39  23.27  22.25   52341.39          0.65      2.87   \n",
       "2018-02-02  22.40  22.70  22.62  21.53   33242.11          0.20      0.89   \n",
       "2018-02-01  23.71  23.86  22.42  22.22   66414.64         -1.30     -5.48   \n",
       "2018-01-31  23.85  23.98  23.72  23.31   49155.02         -0.11     -0.46   \n",
       "2018-01-30  23.71  24.08  23.83  23.70   32420.43          0.05      0.21   \n",
       "2018-01-29  24.40  24.63  23.77  23.72   65469.81         -0.73     -2.98   \n",
       "2018-01-26  24.27  24.74  24.49  24.22   50601.83          0.11      0.45   \n",
       "2018-01-25  24.99  24.99  24.37  24.23  104097.59         -0.93     -3.68   \n",
       "2018-01-24  25.49  26.28  25.29  25.20  134838.00         -0.20     -0.79   \n",
       "2018-01-23  25.15  25.53  25.50  24.93  104205.76          0.39      1.55   \n",
       "2018-01-22  25.14  25.40  25.13  24.75   68292.08         -0.01     -0.04   \n",
       "2018-01-19  24.60  25.34  25.13  24.42  128449.11          0.53      2.15   \n",
       "2018-01-18  24.40  24.88  24.60  24.30   67435.14          0.01      0.04   \n",
       "2018-01-17  24.42  24.92  24.60  23.80   92242.51          0.20      0.82   \n",
       "2018-01-16  23.40  24.60  24.40  23.30  101295.42          0.96      4.10   \n",
       "2018-01-15  24.01  24.23  23.43  23.30   69768.17         -0.80     -3.30   \n",
       "2018-01-12  23.70  25.15  24.24  23.42  120303.53          0.56      2.37   \n",
       "2018-01-11  23.67  23.85  23.67  23.21   48525.75         -0.12     -0.50   \n",
       "2018-01-10  24.10  24.60  23.80  23.40   70125.79         -0.14     -0.58   \n",
       "...           ...    ...    ...    ...        ...           ...       ...   \n",
       "2015-04-13  19.60  21.30  21.13  19.50  171822.69          1.70      8.75   \n",
       "2015-04-10  19.55  19.89  19.43  19.20  112962.15         -0.19     -0.97   \n",
       "2015-04-09  18.28  19.89  19.62  18.02  183119.05          1.20      6.51   \n",
       "2015-04-08  17.60  18.53  18.42  17.60  157725.97          0.88      5.02   \n",
       "2015-04-07  16.54  17.98  17.54  16.50  122471.85          0.88      5.28   \n",
       "2015-04-03  16.44  16.77  16.66  16.25   91962.88          0.22      1.34   \n",
       "2015-04-02  16.21  16.50  16.44  16.21   66336.32          0.15      0.92   \n",
       "2015-04-01  16.18  16.48  16.29  16.00   68609.42          0.12      0.74   \n",
       "2015-03-31  16.78  16.88  16.17  16.07   84467.62         -0.25     -1.52   \n",
       "2015-03-30  15.99  16.63  16.42  15.99   85090.45          0.65      4.12   \n",
       "2015-03-27  14.90  15.86  15.77  14.90  120352.13          0.84      5.63   \n",
       "2015-03-26  15.14  15.35  14.93  14.91   84877.75         -0.37     -2.42   \n",
       "2015-03-25  15.97  15.97  15.30  15.18   97174.40         -0.38     -2.42   \n",
       "2015-03-24  15.38  16.16  15.68  15.28  153390.08          0.30      1.95   \n",
       "2015-03-23  15.34  15.56  15.38  15.25   89461.32          0.04      0.26   \n",
       "2015-03-20  15.38  15.48  15.34  15.18   76800.13         -0.04     -0.26   \n",
       "2015-03-19  15.20  15.64  15.38  15.11   93644.19          0.07      0.46   \n",
       "2015-03-18  15.18  15.66  15.31  15.02  121538.71          0.13      0.86   \n",
       "2015-03-17  14.90  15.44  15.18  14.63  158770.77          0.31      2.08   \n",
       "2015-03-16  14.52  15.05  14.87  14.51   94468.30          0.40      2.76   \n",
       "2015-03-13  14.13  14.50  14.47  14.08   61342.22          0.36      2.55   \n",
       "2015-03-12  14.11  14.80  14.11  13.95   84978.37         -0.19     -1.33   \n",
       "2015-03-11  14.80  15.08  14.30  14.14  119708.43         -0.35     -2.39   \n",
       "2015-03-10  14.20  14.80  14.65  14.01  101213.51          0.34      2.38   \n",
       "2015-03-09  14.14  14.85  14.31  13.80  144945.66          0.03      0.21   \n",
       "2015-03-06  13.17  14.48  14.28  13.13  179831.72          1.12      8.51   \n",
       "2015-03-05  12.88  13.45  13.16  12.87   93180.39          0.26      2.02   \n",
       "2015-03-04  12.80  12.92  12.90  12.61   67075.44          0.20      1.57   \n",
       "2015-03-03  12.52  13.06  12.70  12.52  139071.61          0.18      1.44   \n",
       "2015-03-02  12.25  12.67  12.52  12.20   96291.73          0.32      2.62   \n",
       "\n",
       "               ma5    ma10    ma20      v_ma5     v_ma10     v_ma20  turnover  \\\n",
       "2018-02-27  22.942  22.142  22.875   53782.64   46738.65   55576.11      2.39   \n",
       "2018-02-26  22.406  21.955  22.942   40827.52   42736.34   56007.50      1.53   \n",
       "2018-02-23  21.938  21.929  23.022   35119.58   41871.97   56372.85      1.32   \n",
       "2018-02-22  21.446  21.909  23.137   35397.58   39904.78   60149.60      0.90   \n",
       "2018-02-14  21.366  21.923  23.253   33590.21   42935.74   61716.11      0.58   \n",
       "2018-02-13  21.342  22.103  23.387   39694.65   45518.14   65161.68      0.77   \n",
       "2018-02-12  21.504  22.338  23.533   44645.16   45679.94   68686.33      0.81   \n",
       "2018-02-09  21.920  22.596  23.645   48624.36   48982.38   70552.47      1.36   \n",
       "2018-02-08  22.372  23.009  23.839   44411.98   48612.16   73852.45      0.68   \n",
       "2018-02-07  22.480  23.258  23.929   52281.28   56315.11   74925.33      1.35   \n",
       "2018-02-06  22.864  23.607  24.029   51341.63   64413.58   75738.95      1.39   \n",
       "2018-02-05  23.172  23.928  24.112   46714.72   69278.66   77070.00      1.31   \n",
       "2018-02-02  23.272  24.114  24.184   49340.40   70873.73   79929.71      0.83   \n",
       "2018-02-01  23.646  24.365  24.279   52812.35   80394.43   88480.92      1.66   \n",
       "2018-01-31  24.036  24.583  24.411   60348.94   80496.48   91666.75      1.23   \n",
       "2018-01-30  24.350  24.671  24.365   77485.53   84805.23   92943.35      0.81   \n",
       "2018-01-29  24.684  24.728  24.294   91842.60   91692.73   93456.22      1.64   \n",
       "2018-01-26  24.956  24.694  24.221   92407.05   92122.56   91980.51      1.27   \n",
       "2018-01-25  25.084  24.669  24.109  107976.51   99092.73   92262.67      2.61   \n",
       "2018-01-24  25.130  24.599  23.997  100644.02   93535.55   89522.22      3.37   \n",
       "2018-01-23  24.992  24.450  23.844   92124.92   87064.33   85876.80      2.61   \n",
       "2018-01-22  24.772  24.296  23.644   91542.85   84861.33   84970.00      1.71   \n",
       "2018-01-19  24.432  24.254  23.537   91838.07   88985.70   82975.10      3.21   \n",
       "2018-01-18  24.254  24.192  23.441   90208.95   96567.41   78252.92      1.69   \n",
       "2018-01-17  24.068  24.239  23.378   86427.08  102837.01   77049.61      2.31   \n",
       "2018-01-16  23.908  24.058  23.321   82003.73  101081.47   74590.92      2.54   \n",
       "2018-01-15  23.820  23.860  23.257   78179.81   95219.71   71006.65      1.75   \n",
       "2018-01-12  24.076  23.748  23.236   86133.33   91838.46   69690.35      3.01   \n",
       "2018-01-11  24.130  23.548  23.197  102925.87   85432.61   65928.23      1.21   \n",
       "2018-01-10  24.410  23.394  23.204  119246.95   85508.89   66934.89      1.76   \n",
       "...            ...     ...     ...        ...        ...        ...       ...   \n",
       "2015-04-13  19.228  17.812  16.563  149620.34  114456.84  111752.31      5.88   \n",
       "2015-04-10  18.334  17.276  16.230  133648.38  109309.78  106228.29      3.87   \n",
       "2015-04-09  17.736  16.826  15.964  124323.21  106501.34  104829.10      6.27   \n",
       "2015-04-08  17.070  16.394  15.698  101421.29   97906.88  101658.57      5.40   \n",
       "2015-04-07  16.620  16.120  15.510   86769.62   97473.29   98832.94      4.19   \n",
       "2015-04-03  16.396  15.904  15.348   79293.34   94172.24   99956.63      3.15   \n",
       "2015-04-02  16.218  15.772  15.229   84971.19   92655.96  104350.08      2.27   \n",
       "2015-04-01  15.916  15.666  15.065   88679.47   95386.75  105692.28      2.35   \n",
       "2015-03-31  15.718  15.568  14.896   94392.47  100679.68  105615.58      2.89   \n",
       "2015-03-30  15.620  15.469  14.722  108176.96  108109.99  108345.78      2.91   \n",
       "2015-03-27  15.412  15.314  14.527  109051.14  109047.78  108905.84      4.12   \n",
       "2015-03-26  15.326  15.184  14.462  100340.74  103146.79  108303.41      2.91   \n",
       "2015-03-25  15.416  15.102  14.436  102094.02  103156.85  109604.83      3.33   \n",
       "2015-03-24  15.418  15.002  14.385  106966.89  105410.25  110336.03      5.25   \n",
       "2015-03-23  15.318  14.899  14.304  108043.02  100192.60  107645.16      3.06   \n",
       "2015-03-20  15.216  14.792  14.232  109044.42  105741.03  108857.41      2.63   \n",
       "2015-03-19  15.042  14.686  14.153  105952.84  116044.19  111147.22      3.21   \n",
       "2015-03-18  14.788  14.464  14.058  104219.67  115997.81  112493.60      4.16   \n",
       "2015-03-17  14.586  14.223  13.954  103853.62  110551.48  111739.85      5.43   \n",
       "2015-03-16  14.480  13.975  13.843   92342.17  108581.56  107464.31      3.23   \n",
       "2015-03-13  14.368  13.740  13.740  102437.64  108763.91  108763.91      2.10   \n",
       "2015-03-12  14.330  13.659  13.659  126135.54  114032.98  114032.98      2.91   \n",
       "2015-03-11  14.140  13.603  13.603  127775.94  117664.81  117664.81      4.10   \n",
       "2015-03-10  13.860  13.503  13.503  117249.34  117372.87  117372.87      3.46   \n",
       "2015-03-09  13.470  13.312  13.312  124820.96  120066.09  120066.09      4.96   \n",
       "2015-03-06  13.112  13.112  13.112  115090.18  115090.18  115090.18      6.16   \n",
       "2015-03-05  12.820  12.820  12.820   98904.79   98904.79   98904.79      3.19   \n",
       "2015-03-04  12.707  12.707  12.707  100812.93  100812.93  100812.93      2.30   \n",
       "2015-03-03  12.610  12.610  12.610  117681.67  117681.67  117681.67      4.76   \n",
       "2015-03-02  12.520  12.520  12.520   96291.73   96291.73   96291.73      3.30   \n",
       "\n",
       "            weekday  postive_negative  \n",
       "2018-02-27        1                 1  \n",
       "2018-02-26        0                 1  \n",
       "2018-02-23        4                 1  \n",
       "2018-02-22        3                 1  \n",
       "2018-02-14        2                 1  \n",
       "2018-02-13        1                 1  \n",
       "2018-02-12        0                 1  \n",
       "2018-02-09        4                 0  \n",
       "2018-02-08        3                 1  \n",
       "2018-02-07        2                 0  \n",
       "2018-02-06        1                 0  \n",
       "2018-02-05        0                 1  \n",
       "2018-02-02        4                 1  \n",
       "2018-02-01        3                 0  \n",
       "2018-01-31        2                 0  \n",
       "2018-01-30        1                 1  \n",
       "2018-01-29        0                 0  \n",
       "2018-01-26        4                 1  \n",
       "2018-01-25        3                 0  \n",
       "2018-01-24        2                 0  \n",
       "2018-01-23        1                 1  \n",
       "2018-01-22        0                 0  \n",
       "2018-01-19        4                 1  \n",
       "2018-01-18        3                 1  \n",
       "2018-01-17        2                 1  \n",
       "2018-01-16        1                 1  \n",
       "2018-01-15        0                 0  \n",
       "2018-01-12        4                 1  \n",
       "2018-01-11        3                 0  \n",
       "2018-01-10        2                 0  \n",
       "...             ...               ...  \n",
       "2015-04-13        0                 1  \n",
       "2015-04-10        4                 0  \n",
       "2015-04-09        3                 1  \n",
       "2015-04-08        2                 1  \n",
       "2015-04-07        1                 1  \n",
       "2015-04-03        4                 1  \n",
       "2015-04-02        3                 1  \n",
       "2015-04-01        2                 1  \n",
       "2015-03-31        1                 0  \n",
       "2015-03-30        0                 1  \n",
       "2015-03-27        4                 1  \n",
       "2015-03-26        3                 0  \n",
       "2015-03-25        2                 0  \n",
       "2015-03-24        1                 1  \n",
       "2015-03-23        0                 1  \n",
       "2015-03-20        4                 0  \n",
       "2015-03-19        3                 1  \n",
       "2015-03-18        2                 1  \n",
       "2015-03-17        1                 1  \n",
       "2015-03-16        0                 1  \n",
       "2015-03-13        4                 1  \n",
       "2015-03-12        3                 0  \n",
       "2015-03-11        2                 0  \n",
       "2015-03-10        1                 1  \n",
       "2015-03-09        0                 1  \n",
       "2015-03-06        4                 1  \n",
       "2015-03-05        3                 1  \n",
       "2015-03-04        2                 1  \n",
       "2015-03-03        1                 1  \n",
       "2015-03-02        0                 1  \n",
       "\n",
       "[643 rows x 16 columns]"
      ]
     },
     "execution_count": 233,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 235,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>weekday</th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>postive_negative</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>63</td>\n",
       "      <td>55</td>\n",
       "      <td>61</td>\n",
       "      <td>63</td>\n",
       "      <td>59</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>62</td>\n",
       "      <td>76</td>\n",
       "      <td>71</td>\n",
       "      <td>65</td>\n",
       "      <td>68</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "weekday            0   1   2   3   4\n",
       "postive_negative                    \n",
       "0                 63  55  61  63  59\n",
       "1                 62  76  71  65  68"
      ]
     },
     "execution_count": 235,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.crosstab(stock_data[\"postive_negative\"], stock_data[\"weekday\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 238,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>postive_negative</th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>weekday</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>63</td>\n",
       "      <td>62</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>55</td>\n",
       "      <td>76</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>61</td>\n",
       "      <td>71</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>63</td>\n",
       "      <td>65</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>59</td>\n",
       "      <td>68</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "postive_negative   0   1\n",
       "weekday                 \n",
       "0                 63  62\n",
       "1                 55  76\n",
       "2                 61  71\n",
       "3                 63  65\n",
       "4                 59  68"
      ]
     },
     "execution_count": 238,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "new_data = pd.crosstab(stock_data[\"weekday\"],stock_data[\"postive_negative\"])\n",
    "new_data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 251,
   "metadata": {},
   "outputs": [],
   "source": [
    "precent = new_data.div(new_data.sum(axis=1),axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 252,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>postive_negative</th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>weekday</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.504000</td>\n",
       "      <td>0.496000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.419847</td>\n",
       "      <td>0.580153</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.462121</td>\n",
       "      <td>0.537879</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.492188</td>\n",
       "      <td>0.507812</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.464567</td>\n",
       "      <td>0.535433</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "postive_negative         0         1\n",
       "weekday                             \n",
       "0                 0.504000  0.496000\n",
       "1                 0.419847  0.580153\n",
       "2                 0.462121  0.537879\n",
       "3                 0.492188  0.507812\n",
       "4                 0.464567  0.535433"
      ]
     },
     "execution_count": 252,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "precent"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 246,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['2018-02-27', '2018-02-26', '2018-02-23', '2018-02-22', '2018-02-14',\n",
       "       '2018-02-13', '2018-02-12', '2018-02-09', '2018-02-08', '2018-02-07',\n",
       "       ...\n",
       "       '2015-03-13', '2015-03-12', '2015-03-11', '2015-03-10', '2015-03-09',\n",
       "       '2015-03-06', '2015-03-05', '2015-03-04', '2015-03-03', '2015-03-02'],\n",
       "      dtype='object', length=643)"
      ]
     },
     "execution_count": 246,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_data.index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 259,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x109872cf8>"
      ]
     },
     "execution_count": 259,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "precent.plot(kind=\"bar\", stacked=True, figsize=(20,8))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 260,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABIMAAAHcCAYAAABF62pyAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAHgFJREFUeJzt3X+w3XV95/HXuwYIRQ0QsqBEDNjK\nWiypNVQhtCaBpIsSkDE6FVGyi2R1u93VWYqVOmuYVoa0DK5129mJ26lFcTpttaywRmBJMi6k0AYn\nZNZaWG0phB8OCRIWJID2s3/co8XbJPfm5l5Ocj+Pxz/5npPP93ve9w7f4cwz3+851VoLAAAAAH34\niWEPAAAAAMCLRwwCAAAA6IgYBAAAANARMQgAAACgI2IQAAAAQEfEIAAAAICOiEEAAAAAHRGDAAAA\nADoiBgEAAAB0ZMYwXvSYY45p8+bNG8ZLAwAAAExLd9999/bW2pyx1g0lBs2bNy+bN28exksDAAAA\nTEtV9Q/jWec2MQAAAICOiEEAAAAAHRGDAAAAADoylM8MAgAAAKa/559/Ptu2bcuuXbuGPcq0MnPm\nzMydOzeHHHLIhPYXgwAAAIApsW3btrzsZS/LvHnzUlXDHmdaaK1lx44d2bZtW0488cQJHcNtYgAA\nAMCU2LVrV2bPni0ETaKqyuzZs/fraisxCAAAAJgyQtDk29/fqRgEAAAA0BExCAAAAKAjYhAAAABw\nwNuyZUu2bNnyz57/tV/7tSFMMz433HBDnnjiiR977tFHH81VV101pIlGiEEAAADAAW9PMejTn/70\nEKYZn93FoOOOOy5XXHHFkCYaIQYBAAAAL4rVq1fnrW99axYuXJh3vetdefbZZ/Pud787CxcuzIUX\nXpjnnnsuu3btyvLly3PGGWdkxYoV+f73v5+PfOQjueqqq3LVVVdl0aJFP3bMFz6+9tpr8/nPfz7J\nSCS67rrr8r3vfS8rVqzIwoUL86u/+qt7ne1jH/tYFi5cmPnz5+fRRx/d7b7f+c53cuaZZ+a0007L\nypUr85nPfCaPPPJIFi9enDPPPDO/+Zu/mSRZtmxZ1q1bl3e+85358Ic//KPXuf/++7Ny5cofPT7/\n/POzbdu2JMmKFSvywAMP5L777suiRYuyYMGCXHfddfvzK98tMQgAAAB40Zxxxhm54447Mnv27KxZ\nsyY/8zM/kzvuuCM//dM/nT/6oz/KN77xjVRVNm3alPe///156qmnsmbNmlxxxRW54oorsnHjxj0e\ne8WKFbn55puTJLfddlvOO++8rF27Nq9//etzxx135JFHHsnWrVv3uP+9996b22+/PRdeeGHWr1+/\n2303bdqUc845JzfccEN27NiRSy+9NA8++GCuvPLKrFu3Ll/+8peTJLfcckvOOeec/Nmf/Vk++clP\n7vE13/GOd+SrX/1qnn/++ezcuTMnnHBCLr/88qxevTqbNm3KmjVr0lqb2C97D2ZM6tEAAAAA9uK0\n005Lkvzcz/1cPvShD+XGG29Mkpx++ulZt25dVq1alZ/92Z/N8uXLc9JJJ+Wss84a97FPOOGEPP74\n43n66afzkpe8JEceeWTuvffebNq0KRs3bswTTzyRhx56KKeeeupu97/44otTVTn22GPz3HPP7Xbf\n17zmNfmt3/qtrFu3LqtXr06SHHbYYfnEJz6RI444Ik899dQ+/T7OO++8fPCDH8xrXvOaLF26NEly\n33335eMf/3iqKj/4wQ/yxBNP5Kijjtqn4+6NK4MAAACAF81dd92VJPn617+ej33sY7nzzjuTJHfe\neWdOOeWUbNmyJW9+85tz4403Zvv27fna176WJDn88MPz9NNPJ8ler5R5y1vekt/93d/N2972tiTJ\nySefnA996EPZuHFjrrzyyrzqVa/a474vfelLf+zx7va94YYb8od/+Ie5/fbbc/bZZydJrrnmmlx+\n+eVZu3ZtqupH+79w5j058sgjkyQ33nhjVqxYkSR57Wtfm89+9rPZuHFjPvCBD+TQQw/d6zH2lRgE\nAAAAvGg2b96cM888Mzt37sxll12Wb3zjG1m4cGHuu+++rFy5MieeeGI+/elP5xd+4Rfy8MMPZ8GC\nBUmSpUuX5otf/GJOP/303H777Xs8/ooVK3Lttdfm7W9/e5Lk0ksvzVe+8pWcccYZWbt2bU444YRx\nz7q7fd/4xjfm/PPPz6JFi3LRRRfloYceyvLly3PppZfmggsuyBFHHJGHH344SfK+970vl1xySU47\n7bQ888wze3ydpUuX5q677spJJ52UJLn66qtzySWXZMGCBXnwwQdzxBFHjHvm8ajx3HdWVYck+VJr\nbfke/n5mkj9P8qokW5O8r+3lwAsWLGibN2+e2MQAAADAQeGb3/xmXve61/3o8erVq7No0aJ/9iHQ\n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\n",
      "text/plain": [
       "<Figure size 1440x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 263,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>postive_negative</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>weekday</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.496000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.580153</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.537879</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.507812</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.535433</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         postive_negative\n",
       "weekday                  \n",
       "0                0.496000\n",
       "1                0.580153\n",
       "2                0.537879\n",
       "3                0.507812\n",
       "4                0.535433"
      ]
     },
     "execution_count": 263,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stock_data.pivot_table([\"postive_negative\"], index=[\"weekday\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 分组和聚合"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "col =pd.DataFrame({'color': ['white','red','green','red','green'], 'object': ['pen','pencil','pencil','ashtray','pen'],'price1':[5.56,4.20,1.30,0.56,2.75],'price2':[4.75,4.12,1.60,0.75,3.15]})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>color</th>\n",
       "      <th>object</th>\n",
       "      <th>price1</th>\n",
       "      <th>price2</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>white</td>\n",
       "      <td>pen</td>\n",
       "      <td>5.56</td>\n",
       "      <td>4.75</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>red</td>\n",
       "      <td>pencil</td>\n",
       "      <td>4.20</td>\n",
       "      <td>4.12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>green</td>\n",
       "      <td>pencil</td>\n",
       "      <td>1.30</td>\n",
       "      <td>1.60</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>red</td>\n",
       "      <td>ashtray</td>\n",
       "      <td>0.56</td>\n",
       "      <td>0.75</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>green</td>\n",
       "      <td>pen</td>\n",
       "      <td>2.75</td>\n",
       "      <td>3.15</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   color   object  price1  price2\n",
       "0  white      pen    5.56    4.75\n",
       "1    red   pencil    4.20    4.12\n",
       "2  green   pencil    1.30    1.60\n",
       "3    red  ashtray    0.56    0.75\n",
       "4  green      pen    2.75    3.15"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "col"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<pandas.core.groupby.DataFrameGroupBy object at 0x1068b03c8>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "col.groupby(by=\"color\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<pandas.core.groupby.SeriesGroupBy object at 0x10689f1d0>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "col.groupby(by=\"color\")[\"price1\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>color</th>\n",
       "      <th>price1</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>green</td>\n",
       "      <td>2.75</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>red</td>\n",
       "      <td>4.20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>white</td>\n",
       "      <td>5.56</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   color  price1\n",
       "0  green    2.75\n",
       "1    red    4.20\n",
       "2  white    5.56"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "col.groupby(by=\"color\", as_index=False)[\"price1\"].max()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "color\n",
       "green    2.75\n",
       "red      4.20\n",
       "white    5.56\n",
       "Name: price1, dtype: float64"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "col.price1.groupby(col[\"color\"]).max()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 星巴克案例"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = pd.read_csv(\"directory.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Brand</th>\n",
       "      <th>Store Number</th>\n",
       "      <th>Store Name</th>\n",
       "      <th>Ownership Type</th>\n",
       "      <th>Street Address</th>\n",
       "      <th>City</th>\n",
       "      <th>State/Province</th>\n",
       "      <th>Country</th>\n",
       "      <th>Postcode</th>\n",
       "      <th>Phone Number</th>\n",
       "      <th>Timezone</th>\n",
       "      <th>Longitude</th>\n",
       "      <th>Latitude</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>47370-257954</td>\n",
       "      <td>Meritxell, 96</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Av. Meritxell, 96</td>\n",
       "      <td>Andorra la Vella</td>\n",
       "      <td>7</td>\n",
       "      <td>AD</td>\n",
       "      <td>AD500</td>\n",
       "      <td>376818720</td>\n",
       "      <td>GMT+1:00 Europe/Andorra</td>\n",
       "      <td>1.53</td>\n",
       "      <td>42.51</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>22331-212325</td>\n",
       "      <td>Ajman Drive Thru</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>1 Street 69, Al Jarf</td>\n",
       "      <td>Ajman</td>\n",
       "      <td>AJ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>55.47</td>\n",
       "      <td>25.42</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>47089-256771</td>\n",
       "      <td>Dana Mall</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Sheikh Khalifa Bin Zayed St.</td>\n",
       "      <td>Ajman</td>\n",
       "      <td>AJ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>55.47</td>\n",
       "      <td>25.39</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>22126-218024</td>\n",
       "      <td>Twofour 54</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Al Salam Street</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.38</td>\n",
       "      <td>24.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>17127-178586</td>\n",
       "      <td>Al Ain Tower</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Khaldiya Area, Abu Dhabi Island</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.54</td>\n",
       "      <td>24.51</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>17688-182164</td>\n",
       "      <td>Dalma Mall, Ground Floor</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Dalma Mall, Mussafah</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.49</td>\n",
       "      <td>24.40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>18182-182165</td>\n",
       "      <td>Dalma Mall, Level 1</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Dalma Mall, Mussafah</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.49</td>\n",
       "      <td>24.40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>23359-229184</td>\n",
       "      <td>Debenhams Yas Mall</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Yas Island</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.61</td>\n",
       "      <td>24.46</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>30781-99022</td>\n",
       "      <td>Khalidiya Street</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Khalidiya St.</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>26670052</td>\n",
       "      <td>GMT+04:00 Asia/Muscat</td>\n",
       "      <td>55.69</td>\n",
       "      <td>24.19</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>20423-205465</td>\n",
       "      <td>Eastern Mangroves</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Al Salam Street, The Mangroves</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.38</td>\n",
       "      <td>24.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>20424-205466</td>\n",
       "      <td>Nation Towers</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Corniche Street</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.34</td>\n",
       "      <td>24.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>1579-122101</td>\n",
       "      <td>HCT Abu Dhabi Women's College Block</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Najda Street, Higher Colleges of Technology</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>3167</td>\n",
       "      <td>26426280</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.37</td>\n",
       "      <td>24.49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>32595-122105</td>\n",
       "      <td>Standard Chartered Building</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Khalidiya St., Beside Union Cooperative Society</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>3167</td>\n",
       "      <td>26359275</td>\n",
       "      <td>GMT+04:00 Asia/Muscat</td>\n",
       "      <td>55.69</td>\n",
       "      <td>24.19</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24191-236428</td>\n",
       "      <td>International Tower</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Capital Center, Adnec, Abu Dhabi</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.70</td>\n",
       "      <td>24.30</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24604-238367</td>\n",
       "      <td>Yas Mall 3</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>YAS Island</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.60</td>\n",
       "      <td>24.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>32029-110804</td>\n",
       "      <td>Blue Tower A</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Street No.4, Muroor Road, Ground Floor</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>26429255</td>\n",
       "      <td>GMT+04:00 Asia/Muscat</td>\n",
       "      <td>55.74</td>\n",
       "      <td>24.21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>29560-238539</td>\n",
       "      <td>Corniche Park DT</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Corniche  Road , Abu Dhabi</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.34</td>\n",
       "      <td>24.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>32239-100001</td>\n",
       "      <td>Khalidiya Mall</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Street No.26 of Khalidiya Area, Ground Floor, ...</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>26354740</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.35</td>\n",
       "      <td>24.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>31719-103601</td>\n",
       "      <td>Al Wahda Mall</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>11th Street, Ground Floor, Main Entrance</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>24437197</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.37</td>\n",
       "      <td>24.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>20008-200004</td>\n",
       "      <td>Al Seef Village</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Salam Street, Ministries District</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.38</td>\n",
       "      <td>24.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>32767-131566</td>\n",
       "      <td>Shangri-La Souq</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Shangri-La Souk, Um Al Nar</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>3167</td>\n",
       "      <td>25581641</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.51</td>\n",
       "      <td>24.42</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>3886-141408</td>\n",
       "      <td>Abu Dhabi University, Men's</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Muroor Street, Abu Dhabi Mall</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>24433824</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.35</td>\n",
       "      <td>24.46</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>29539-254261</td>\n",
       "      <td>MUshrif Mall 1</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>25th st, Airport Road</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>971</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.66</td>\n",
       "      <td>24.41</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>28809-251348</td>\n",
       "      <td>Boutik Mall Sun &amp; Sky</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Shams Abu Dhabi, Al Reem Island</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.41</td>\n",
       "      <td>24.50</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>34262-62540</td>\n",
       "      <td>Marina Mall</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Marina Mall</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>02-6815883</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.32</td>\n",
       "      <td>24.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>3178-141407</td>\n",
       "      <td>Abu Dhabi University, Women's</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Road Al Ain Abu Dhabi Road Number 22, Women Side</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>25860492</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.57</td>\n",
       "      <td>24.35</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>34260-17877</td>\n",
       "      <td>Hamdan Street</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Hamdan Street</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>02-6261001</td>\n",
       "      <td>GMT+04:00 Asia/Muscat</td>\n",
       "      <td>55.62</td>\n",
       "      <td>24.21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>21605-213406</td>\n",
       "      <td>Saadiyat Island</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Saadiyat Island</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.44</td>\n",
       "      <td>24.54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>1935-141406</td>\n",
       "      <td>Camellia Flowers</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Khalidiya Area Khalidiya street, Behind Union ...</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>02-6355542</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.34</td>\n",
       "      <td>24.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>20113-195784</td>\n",
       "      <td>Deerfields</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Sheikh Zayed Road, Al Bahia Area</td>\n",
       "      <td>Abu Dhabi</td>\n",
       "      <td>AZ</td>\n",
       "      <td>AE</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+04:00 Asia/Dubai</td>\n",
       "      <td>54.94</td>\n",
       "      <td>24.90</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25570</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>10849-103163</td>\n",
       "      <td>I-80 &amp; Dewar Dr-Rock Springs</td>\n",
       "      <td>Company Owned</td>\n",
       "      <td>118 Westland Way</td>\n",
       "      <td>Rock Springs</td>\n",
       "      <td>WY</td>\n",
       "      <td>US</td>\n",
       "      <td>829015751</td>\n",
       "      <td>307-362-7145</td>\n",
       "      <td>GMT-07:00 America/Denver</td>\n",
       "      <td>-109.25</td>\n",
       "      <td>41.58</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25571</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>10769-102454</td>\n",
       "      <td>Coffeen &amp; Brundage Lane-Sheridan</td>\n",
       "      <td>Company Owned</td>\n",
       "      <td>2208 Coffeen Ave</td>\n",
       "      <td>Sheridian</td>\n",
       "      <td>WY</td>\n",
       "      <td>US</td>\n",
       "      <td>828016213</td>\n",
       "      <td>307-672-5129</td>\n",
       "      <td>GMT-07:00 America/Denver</td>\n",
       "      <td>-106.94</td>\n",
       "      <td>44.77</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25572</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>48482-263452</td>\n",
       "      <td>Phạm Ngọc Thạch</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>2 Phạm Ngọc Thạch, Quận Đống Đa</td>\n",
       "      <td>Hà Nội</td>\n",
       "      <td>HN</td>\n",
       "      <td>VN</td>\n",
       "      <td>0</td>\n",
       "      <td>04 3637 4374</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>105.83</td>\n",
       "      <td>21.01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25573</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24015-232287</td>\n",
       "      <td>Press Club</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>59A Lý Thái Tổ, Quận Hoàn Kiếm, #123 Tầng trệt...</td>\n",
       "      <td>Hà Nội</td>\n",
       "      <td>HN</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>04 3936 9017</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>105.86</td>\n",
       "      <td>21.03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25574</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24016-230012</td>\n",
       "      <td>IPH</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>241 Xuân Thủy, Quận Cầu Giấy</td>\n",
       "      <td>Hà Nội</td>\n",
       "      <td>HN</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>04 3795 4278</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>105.78</td>\n",
       "      <td>21.04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25575</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>47910-260386</td>\n",
       "      <td>The Garden</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Tầng 1, TTTM The Garden, khu đô thị The Manor,...</td>\n",
       "      <td>Hà Nội</td>\n",
       "      <td>HN</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>04 3395 3333</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>105.78</td>\n",
       "      <td>21.01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25576</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24003-228944</td>\n",
       "      <td>Lan Viên</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>32 Hàng Bài, Quận Hoàn Kiếm</td>\n",
       "      <td>Hà Nội</td>\n",
       "      <td>HN</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>04 3936 8407</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>105.85</td>\n",
       "      <td>21.02</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25577</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24014-231244</td>\n",
       "      <td>Bà Triệu</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>314 Bà Triệu, Quận Hai Bà Trưng</td>\n",
       "      <td>Hà Nội</td>\n",
       "      <td>HN</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>04 3978 1817</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>105.85</td>\n",
       "      <td>21.01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25578</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>49436-269127</td>\n",
       "      <td>The Vista</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>628 Xa Lo Ha Noi Highway, Dist 2, Ground Floor...</td>\n",
       "      <td>Ho Chi Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 6281 4546</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.75</td>\n",
       "      <td>10.80</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25579</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>49441-269128</td>\n",
       "      <td>Ibis building</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>2 Hong Ha st, Ward 2, Tan Binh Dist, Tầng trệt...</td>\n",
       "      <td>Ho Chi Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.67</td>\n",
       "      <td>10.81</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25580</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>18663-190626</td>\n",
       "      <td>President Place</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>93 Nguyễn Du, Quận 1, Tầng trệt Trung Tâm Thươ...</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3822 5891</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.70</td>\n",
       "      <td>10.78</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25581</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24011-230014</td>\n",
       "      <td>Pandora</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>1/1 Trường Chinh, Quận Tân Phú</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3812 6830</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.63</td>\n",
       "      <td>10.81</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25582</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>23633-223885</td>\n",
       "      <td>Đông Du</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>38 Đông Du, Quận 1</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.70</td>\n",
       "      <td>10.78</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25583</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>23925-226964</td>\n",
       "      <td>Đề Thám</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>191 - 193 Đề Thám, Quận 1</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3838 6455</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.69</td>\n",
       "      <td>10.77</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25584</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>48282-262438</td>\n",
       "      <td>Nguyễn Văn Trỗi</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>66 Nguyễn Văn Trỗi, Quận Phú Nhuận, Tầng trệt,...</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>0</td>\n",
       "      <td>08 3842 2171</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.68</td>\n",
       "      <td>10.79</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25585</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>25378-234124</td>\n",
       "      <td>VivoCity</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>1058 Nguyễn Văn Linh, Quận 7</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3771 4975</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.70</td>\n",
       "      <td>10.73</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25586</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>29695-254869</td>\n",
       "      <td>Lakai</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>98-126 Nguyễn Tri Phương, Quận 5</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3924 1251</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.67</td>\n",
       "      <td>10.75</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25587</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>48731-264926</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Sân bay Tân Sơn Nhất, 45 Trường Sơn, Tân Bì...</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 6681 6463</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.66</td>\n",
       "      <td>10.81</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25588</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>25865-242710</td>\n",
       "      <td>Kumho</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>39 Lê Duẩn, Quận 1</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3823 4990</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.70</td>\n",
       "      <td>10.78</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25589</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24009-223886</td>\n",
       "      <td>Phan Xich Long</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>214 -216 Phan Xích Long, Quận Phú Nhuận</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3517 6461</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.69</td>\n",
       "      <td>10.80</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25590</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>25346-240592</td>\n",
       "      <td>Thảo Điền</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>21 Thảo Điền, Quận 2</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3744 2040</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.74</td>\n",
       "      <td>10.80</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25591</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>29047-252265</td>\n",
       "      <td>Nguyễn Huệ</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>99 Nguyễn Huệ, Quận 1</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3821 0105</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.70</td>\n",
       "      <td>10.77</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25592</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>27767-248666</td>\n",
       "      <td>SSG</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>561A Điện Biên Phủ, Quận Bình Thạnh, Khách sạn...</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3512 0585</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.72</td>\n",
       "      <td>10.80</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25593</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>18687-193924</td>\n",
       "      <td>New World</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>76 Lê Lai, Quận 1, Góc đường Phạm Hồng Thái và...</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3823 7952</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.69</td>\n",
       "      <td>10.77</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25594</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>27082-246744</td>\n",
       "      <td>Emart</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>168 Phan Văn Trị, Quận Gò Vấp, Khách sạn Rex</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3588 0146</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.69</td>\n",
       "      <td>10.82</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25595</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>21401-212072</td>\n",
       "      <td>Rex</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>141 Nguyễn Huệ, Quận 1, Góc đường Pasteur và L...</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 3824 4668</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.70</td>\n",
       "      <td>10.78</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25596</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>24010-226985</td>\n",
       "      <td>Panorama</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>SN-44, Tòa Nhà Panorama, 208 Trần Văn Trà, Quận 7</td>\n",
       "      <td>Thành Phố Hồ Chí Minh</td>\n",
       "      <td>SG</td>\n",
       "      <td>VN</td>\n",
       "      <td>70000</td>\n",
       "      <td>08 5413 8292</td>\n",
       "      <td>GMT+000000 Asia/Saigon</td>\n",
       "      <td>106.71</td>\n",
       "      <td>10.72</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25597</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>47608-253804</td>\n",
       "      <td>Rosebank Mall</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Cnr Tyrwhitt and Cradock Avenue, Rosebank</td>\n",
       "      <td>Johannesburg</td>\n",
       "      <td>GT</td>\n",
       "      <td>ZA</td>\n",
       "      <td>2194</td>\n",
       "      <td>27873500159</td>\n",
       "      <td>GMT+000000 Africa/Johannesburg</td>\n",
       "      <td>28.04</td>\n",
       "      <td>-26.15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25598</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>47640-253809</td>\n",
       "      <td>Menlyn Maine</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Shop 61B, Central Square, Cnr Aramist &amp; Coroba...</td>\n",
       "      <td>Menlyn</td>\n",
       "      <td>GT</td>\n",
       "      <td>ZA</td>\n",
       "      <td>181</td>\n",
       "      <td>NaN</td>\n",
       "      <td>GMT+000000 Africa/Johannesburg</td>\n",
       "      <td>28.28</td>\n",
       "      <td>-25.79</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25599</th>\n",
       "      <td>Starbucks</td>\n",
       "      <td>47609-253286</td>\n",
       "      <td>Mall of Africa</td>\n",
       "      <td>Licensed</td>\n",
       "      <td>Shop 2077, Upper Level, Waterfall City</td>\n",
       "      <td>Midrand</td>\n",
       "      <td>GT</td>\n",
       "      <td>ZA</td>\n",
       "      <td>1682</td>\n",
       "      <td>27873500215</td>\n",
       "      <td>GMT+000000 Africa/Johannesburg</td>\n",
       "      <td>28.11</td>\n",
       "      <td>-26.02</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>25600 rows × 13 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "           Brand  Store Number                           Store Name  \\\n",
       "0      Starbucks  47370-257954                        Meritxell, 96   \n",
       "1      Starbucks  22331-212325                     Ajman Drive Thru   \n",
       "2      Starbucks  47089-256771                            Dana Mall   \n",
       "3      Starbucks  22126-218024                           Twofour 54   \n",
       "4      Starbucks  17127-178586                         Al Ain Tower   \n",
       "5      Starbucks  17688-182164             Dalma Mall, Ground Floor   \n",
       "6      Starbucks  18182-182165                  Dalma Mall, Level 1   \n",
       "7      Starbucks  23359-229184                   Debenhams Yas Mall   \n",
       "8      Starbucks   30781-99022                     Khalidiya Street   \n",
       "9      Starbucks  20423-205465                    Eastern Mangroves   \n",
       "10     Starbucks  20424-205466                        Nation Towers   \n",
       "11     Starbucks   1579-122101  HCT Abu Dhabi Women's College Block   \n",
       "12     Starbucks  32595-122105          Standard Chartered Building   \n",
       "13     Starbucks  24191-236428                  International Tower   \n",
       "14     Starbucks  24604-238367                           Yas Mall 3   \n",
       "15     Starbucks  32029-110804                         Blue Tower A   \n",
       "16     Starbucks  29560-238539                     Corniche Park DT   \n",
       "17     Starbucks  32239-100001                       Khalidiya Mall   \n",
       "18     Starbucks  31719-103601                        Al Wahda Mall   \n",
       "19     Starbucks  20008-200004                      Al Seef Village   \n",
       "20     Starbucks  32767-131566                      Shangri-La Souq   \n",
       "21     Starbucks   3886-141408          Abu Dhabi University, Men's   \n",
       "22     Starbucks  29539-254261                       MUshrif Mall 1   \n",
       "23     Starbucks  28809-251348                Boutik Mall Sun & Sky   \n",
       "24     Starbucks   34262-62540                          Marina Mall   \n",
       "25     Starbucks   3178-141407        Abu Dhabi University, Women's   \n",
       "26     Starbucks   34260-17877                        Hamdan Street   \n",
       "27     Starbucks  21605-213406                      Saadiyat Island   \n",
       "28     Starbucks   1935-141406                     Camellia Flowers   \n",
       "29     Starbucks  20113-195784                           Deerfields   \n",
       "...          ...           ...                                  ...   \n",
       "25570  Starbucks  10849-103163         I-80 & Dewar Dr-Rock Springs   \n",
       "25571  Starbucks  10769-102454     Coffeen & Brundage Lane-Sheridan   \n",
       "25572  Starbucks  48482-263452                      Phạm Ngọc Thạch   \n",
       "25573  Starbucks  24015-232287                           Press Club   \n",
       "25574  Starbucks  24016-230012                                  IPH   \n",
       "25575  Starbucks  47910-260386                           The Garden   \n",
       "25576  Starbucks  24003-228944                             Lan Viên   \n",
       "25577  Starbucks  24014-231244                             Bà Triệu   \n",
       "25578  Starbucks  49436-269127                            The Vista   \n",
       "25579  Starbucks  49441-269128                        Ibis building   \n",
       "25580  Starbucks  18663-190626                      President Place   \n",
       "25581  Starbucks  24011-230014                              Pandora   \n",
       "25582  Starbucks  23633-223885                              Đông Du   \n",
       "25583  Starbucks  23925-226964                              Đề Thám   \n",
       "25584  Starbucks  48282-262438                      Nguyễn Văn Trỗi   \n",
       "25585  Starbucks  25378-234124                             VivoCity   \n",
       "25586  Starbucks  29695-254869                                Lakai   \n",
       "25587  Starbucks  48731-264926                Thành Phố Hồ Chí Minh   \n",
       "25588  Starbucks  25865-242710                                Kumho   \n",
       "25589  Starbucks  24009-223886                       Phan Xich Long   \n",
       "25590  Starbucks  25346-240592                            Thảo Điền   \n",
       "25591  Starbucks  29047-252265                           Nguyễn Huệ   \n",
       "25592  Starbucks  27767-248666                                  SSG   \n",
       "25593  Starbucks  18687-193924                            New World   \n",
       "25594  Starbucks  27082-246744                                Emart   \n",
       "25595  Starbucks  21401-212072                                  Rex   \n",
       "25596  Starbucks  24010-226985                             Panorama   \n",
       "25597  Starbucks  47608-253804                        Rosebank Mall   \n",
       "25598  Starbucks  47640-253809                         Menlyn Maine   \n",
       "25599  Starbucks  47609-253286                       Mall of Africa   \n",
       "\n",
       "      Ownership Type                                     Street Address  \\\n",
       "0           Licensed                                  Av. Meritxell, 96   \n",
       "1           Licensed                               1 Street 69, Al Jarf   \n",
       "2           Licensed                       Sheikh Khalifa Bin Zayed St.   \n",
       "3           Licensed                                    Al Salam Street   \n",
       "4           Licensed                    Khaldiya Area, Abu Dhabi Island   \n",
       "5           Licensed                               Dalma Mall, Mussafah   \n",
       "6           Licensed                               Dalma Mall, Mussafah   \n",
       "7           Licensed                                         Yas Island   \n",
       "8           Licensed                                      Khalidiya St.   \n",
       "9           Licensed                     Al Salam Street, The Mangroves   \n",
       "10          Licensed                                    Corniche Street   \n",
       "11          Licensed        Najda Street, Higher Colleges of Technology   \n",
       "12          Licensed    Khalidiya St., Beside Union Cooperative Society   \n",
       "13          Licensed                   Capital Center, Adnec, Abu Dhabi   \n",
       "14          Licensed                                         YAS Island   \n",
       "15          Licensed             Street No.4, Muroor Road, Ground Floor   \n",
       "16          Licensed                         Corniche  Road , Abu Dhabi   \n",
       "17          Licensed  Street No.26 of Khalidiya Area, Ground Floor, ...   \n",
       "18          Licensed           11th Street, Ground Floor, Main Entrance   \n",
       "19          Licensed                  Salam Street, Ministries District   \n",
       "20          Licensed                         Shangri-La Souk, Um Al Nar   \n",
       "21          Licensed                      Muroor Street, Abu Dhabi Mall   \n",
       "22          Licensed                              25th st, Airport Road   \n",
       "23          Licensed                    Shams Abu Dhabi, Al Reem Island   \n",
       "24          Licensed                                        Marina Mall   \n",
       "25          Licensed   Road Al Ain Abu Dhabi Road Number 22, Women Side   \n",
       "26          Licensed                                      Hamdan Street   \n",
       "27          Licensed                                    Saadiyat Island   \n",
       "28          Licensed  Khalidiya Area Khalidiya street, Behind Union ...   \n",
       "29          Licensed                   Sheikh Zayed Road, Al Bahia Area   \n",
       "...              ...                                                ...   \n",
       "25570  Company Owned                                   118 Westland Way   \n",
       "25571  Company Owned                                   2208 Coffeen Ave   \n",
       "25572       Licensed                    2 Phạm Ngọc Thạch, Quận Đống Đa   \n",
       "25573       Licensed  59A Lý Thái Tổ, Quận Hoàn Kiếm, #123 Tầng trệt...   \n",
       "25574       Licensed                       241 Xuân Thủy, Quận Cầu Giấy   \n",
       "25575       Licensed  Tầng 1, TTTM The Garden, khu đô thị The Manor,...   \n",
       "25576       Licensed                        32 Hàng Bài, Quận Hoàn Kiếm   \n",
       "25577       Licensed                    314 Bà Triệu, Quận Hai Bà Trưng   \n",
       "25578       Licensed  628 Xa Lo Ha Noi Highway, Dist 2, Ground Floor...   \n",
       "25579       Licensed  2 Hong Ha st, Ward 2, Tan Binh Dist, Tầng trệt...   \n",
       "25580       Licensed  93 Nguyễn Du, Quận 1, Tầng trệt Trung Tâm Thươ...   \n",
       "25581       Licensed                     1/1 Trường Chinh, Quận Tân Phú   \n",
       "25582       Licensed                                 38 Đông Du, Quận 1   \n",
       "25583       Licensed                          191 - 193 Đề Thám, Quận 1   \n",
       "25584       Licensed  66 Nguyễn Văn Trỗi, Quận Phú Nhuận, Tầng trệt,...   \n",
       "25585       Licensed                       1058 Nguyễn Văn Linh, Quận 7   \n",
       "25586       Licensed                   98-126 Nguyễn Tri Phương, Quận 5   \n",
       "25587       Licensed  Sân bay Tân Sơn Nhất, 45 Trường Sơn, Tân Bì...   \n",
       "25588       Licensed                                 39 Lê Duẩn, Quận 1   \n",
       "25589       Licensed            214 -216 Phan Xích Long, Quận Phú Nhuận   \n",
       "25590       Licensed                               21 Thảo Điền, Quận 2   \n",
       "25591       Licensed                              99 Nguyễn Huệ, Quận 1   \n",
       "25592       Licensed  561A Điện Biên Phủ, Quận Bình Thạnh, Khách sạn...   \n",
       "25593       Licensed  76 Lê Lai, Quận 1, Góc đường Phạm Hồng Thái và...   \n",
       "25594       Licensed       168 Phan Văn Trị, Quận Gò Vấp, Khách sạn Rex   \n",
       "25595       Licensed  141 Nguyễn Huệ, Quận 1, Góc đường Pasteur và L...   \n",
       "25596       Licensed  SN-44, Tòa Nhà Panorama, 208 Trần Văn Trà, Quận 7   \n",
       "25597       Licensed          Cnr Tyrwhitt and Cradock Avenue, Rosebank   \n",
       "25598       Licensed  Shop 61B, Central Square, Cnr Aramist & Coroba...   \n",
       "25599       Licensed             Shop 2077, Upper Level, Waterfall City   \n",
       "\n",
       "                        City State/Province Country   Postcode  Phone Number  \\\n",
       "0           Andorra la Vella              7      AD      AD500     376818720   \n",
       "1                      Ajman             AJ      AE        NaN           NaN   \n",
       "2                      Ajman             AJ      AE        NaN           NaN   \n",
       "3                  Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "4                  Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "5                  Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "6                  Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "7                  Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "8                  Abu Dhabi             AZ      AE        NaN      26670052   \n",
       "9                  Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "10                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "11                 Abu Dhabi             AZ      AE       3167      26426280   \n",
       "12                 Abu Dhabi             AZ      AE       3167      26359275   \n",
       "13                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "14                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "15                 Abu Dhabi             AZ      AE        NaN      26429255   \n",
       "16                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "17                 Abu Dhabi             AZ      AE        NaN      26354740   \n",
       "18                 Abu Dhabi             AZ      AE        NaN      24437197   \n",
       "19                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "20                 Abu Dhabi             AZ      AE       3167      25581641   \n",
       "21                 Abu Dhabi             AZ      AE        NaN      24433824   \n",
       "22                 Abu Dhabi             AZ      AE        971           NaN   \n",
       "23                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "24                 Abu Dhabi             AZ      AE        NaN    02-6815883   \n",
       "25                 Abu Dhabi             AZ      AE        NaN      25860492   \n",
       "26                 Abu Dhabi             AZ      AE        NaN    02-6261001   \n",
       "27                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "28                 Abu Dhabi             AZ      AE        NaN    02-6355542   \n",
       "29                 Abu Dhabi             AZ      AE        NaN           NaN   \n",
       "...                      ...            ...     ...        ...           ...   \n",
       "25570           Rock Springs             WY      US  829015751  307-362-7145   \n",
       "25571              Sheridian             WY      US  828016213  307-672-5129   \n",
       "25572                 Hà Nội             HN      VN          0  04 3637 4374   \n",
       "25573                 Hà Nội             HN      VN      70000  04 3936 9017   \n",
       "25574                 Hà Nội             HN      VN      70000  04 3795 4278   \n",
       "25575                 Hà Nội             HN      VN      70000  04 3395 3333   \n",
       "25576                 Hà Nội             HN      VN      70000  04 3936 8407   \n",
       "25577                 Hà Nội             HN      VN      70000  04 3978 1817   \n",
       "25578            Ho Chi Minh             SG      VN      70000  08 6281 4546   \n",
       "25579            Ho Chi Minh             SG      VN          0           NaN   \n",
       "25580  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3822 5891   \n",
       "25581  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3812 6830   \n",
       "25582  Thành Phố Hồ Chí Minh             SG      VN      70000           NaN   \n",
       "25583  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3838 6455   \n",
       "25584  Thành Phố Hồ Chí Minh             SG      VN          0  08 3842 2171   \n",
       "25585  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3771 4975   \n",
       "25586  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3924 1251   \n",
       "25587  Thành Phố Hồ Chí Minh             SG      VN      70000  08 6681 6463   \n",
       "25588  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3823 4990   \n",
       "25589  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3517 6461   \n",
       "25590  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3744 2040   \n",
       "25591  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3821 0105   \n",
       "25592  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3512 0585   \n",
       "25593  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3823 7952   \n",
       "25594  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3588 0146   \n",
       "25595  Thành Phố Hồ Chí Minh             SG      VN      70000  08 3824 4668   \n",
       "25596  Thành Phố Hồ Chí Minh             SG      VN      70000  08 5413 8292   \n",
       "25597           Johannesburg             GT      ZA       2194   27873500159   \n",
       "25598                 Menlyn             GT      ZA        181           NaN   \n",
       "25599                Midrand             GT      ZA       1682   27873500215   \n",
       "\n",
       "                             Timezone  Longitude  Latitude  \n",
       "0             GMT+1:00 Europe/Andorra       1.53     42.51  \n",
       "1                GMT+04:00 Asia/Dubai      55.47     25.42  \n",
       "2                GMT+04:00 Asia/Dubai      55.47     25.39  \n",
       "3                GMT+04:00 Asia/Dubai      54.38     24.48  \n",
       "4                GMT+04:00 Asia/Dubai      54.54     24.51  \n",
       "5                GMT+04:00 Asia/Dubai      54.49     24.40  \n",
       "6                GMT+04:00 Asia/Dubai      54.49     24.40  \n",
       "7                GMT+04:00 Asia/Dubai      54.61     24.46  \n",
       "8               GMT+04:00 Asia/Muscat      55.69     24.19  \n",
       "9                GMT+04:00 Asia/Dubai      54.38     24.48  \n",
       "10               GMT+04:00 Asia/Dubai      54.34     24.47  \n",
       "11               GMT+04:00 Asia/Dubai      54.37     24.49  \n",
       "12              GMT+04:00 Asia/Muscat      55.69     24.19  \n",
       "13               GMT+04:00 Asia/Dubai      54.70     24.30  \n",
       "14               GMT+04:00 Asia/Dubai      54.60     24.48  \n",
       "15              GMT+04:00 Asia/Muscat      55.74     24.21  \n",
       "16               GMT+04:00 Asia/Dubai      54.34     24.47  \n",
       "17               GMT+04:00 Asia/Dubai      54.35     24.47  \n",
       "18               GMT+04:00 Asia/Dubai      54.37     24.47  \n",
       "19               GMT+04:00 Asia/Dubai      54.38     24.48  \n",
       "20               GMT+04:00 Asia/Dubai      54.51     24.42  \n",
       "21               GMT+04:00 Asia/Dubai      54.35     24.46  \n",
       "22               GMT+04:00 Asia/Dubai      54.66     24.41  \n",
       "23               GMT+04:00 Asia/Dubai      54.41     24.50  \n",
       "24               GMT+04:00 Asia/Dubai      54.32     24.47  \n",
       "25               GMT+04:00 Asia/Dubai      54.57     24.35  \n",
       "26              GMT+04:00 Asia/Muscat      55.62     24.21  \n",
       "27               GMT+04:00 Asia/Dubai      54.44     24.54  \n",
       "28               GMT+04:00 Asia/Dubai      54.34     24.47  \n",
       "29               GMT+04:00 Asia/Dubai      54.94     24.90  \n",
       "...                               ...        ...       ...  \n",
       "25570        GMT-07:00 America/Denver    -109.25     41.58  \n",
       "25571        GMT-07:00 America/Denver    -106.94     44.77  \n",
       "25572          GMT+000000 Asia/Saigon     105.83     21.01  \n",
       "25573          GMT+000000 Asia/Saigon     105.86     21.03  \n",
       "25574          GMT+000000 Asia/Saigon     105.78     21.04  \n",
       "25575          GMT+000000 Asia/Saigon     105.78     21.01  \n",
       "25576          GMT+000000 Asia/Saigon     105.85     21.02  \n",
       "25577          GMT+000000 Asia/Saigon     105.85     21.01  \n",
       "25578          GMT+000000 Asia/Saigon     106.75     10.80  \n",
       "25579          GMT+000000 Asia/Saigon     106.67     10.81  \n",
       "25580          GMT+000000 Asia/Saigon     106.70     10.78  \n",
       "25581          GMT+000000 Asia/Saigon     106.63     10.81  \n",
       "25582          GMT+000000 Asia/Saigon     106.70     10.78  \n",
       "25583          GMT+000000 Asia/Saigon     106.69     10.77  \n",
       "25584          GMT+000000 Asia/Saigon     106.68     10.79  \n",
       "25585          GMT+000000 Asia/Saigon     106.70     10.73  \n",
       "25586          GMT+000000 Asia/Saigon     106.67     10.75  \n",
       "25587          GMT+000000 Asia/Saigon     106.66     10.81  \n",
       "25588          GMT+000000 Asia/Saigon     106.70     10.78  \n",
       "25589          GMT+000000 Asia/Saigon     106.69     10.80  \n",
       "25590          GMT+000000 Asia/Saigon     106.74     10.80  \n",
       "25591          GMT+000000 Asia/Saigon     106.70     10.77  \n",
       "25592          GMT+000000 Asia/Saigon     106.72     10.80  \n",
       "25593          GMT+000000 Asia/Saigon     106.69     10.77  \n",
       "25594          GMT+000000 Asia/Saigon     106.69     10.82  \n",
       "25595          GMT+000000 Asia/Saigon     106.70     10.78  \n",
       "25596          GMT+000000 Asia/Saigon     106.71     10.72  \n",
       "25597  GMT+000000 Africa/Johannesburg      28.04    -26.15  \n",
       "25598  GMT+000000 Africa/Johannesburg      28.28    -25.79  \n",
       "25599  GMT+000000 Africa/Johannesburg      28.11    -26.02  \n",
       "\n",
       "[25600 rows x 13 columns]"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "ret = data.groupby(by=\"Country\").count()[\"Brand\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x10a861cc0>"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "ret.sort_values(ascending=False)[:20].plot(kind=\"bar\", figsize=(20, 8), fontsize=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nwBCCKQAAAACGEEwBAAAAMISz8gHAgjjrIAAAHBgjpgAAAAAYwogpAOAKGQ0GAMBWEEwBAFd7Oz14\n2+n9AwBWl2AKAICVJngDgNUlmAIAgCUmeANgJ9sxk59X1e2r6pSqOr+qzquqt1TV7tHtAgAAAGBz\nO2LEVFXdNMkH5qsnJTkoyVOSvL+qjunu84Y1DgAA2NROHw220/sHsAg7IphK8pwkhye5T3e/N0mq\n6rQkJyd5QpLnjWsaAADAzrPTgzf9WyzBKfuy8sFUVV0zyUOSnLoWSs3enOT8JA+PYAoAAACuFnZ6\n6LbT+rcT5pg6JskNknxo/cruviTJx5LctqpuOKJhAAAAAOzbTgimds/LMzfZdtaGGgAAAACWRHX3\n6DZcJVX1M0lel+QF3f2sDdten+QRSe7R3X+1bv1xSY6br94uyanb1NwkuVGSs7fx7203/VtdO7lv\nif6tOv1bXTu5b4n+rTr9W107uW+J/q06/VtdO7lvyfb375bdveuKilZ+jqkkF8zLwzbZdtiGmiRJ\nd78iySu2slH7UlV7uvvYEX97O+jf6trJfUv0b9Xp3+rayX1L9G/V6d/q2sl9S/Rv1enf6trJfUuW\nt3874VC+0+flEZtsW0vmztiepgAAAACwv3ZCMPXJTGffu8f6lVV13SR3SvKZ7j53RMMAAAAA2LeV\nD6bms++9KclRVXW/dZselOTaSd44pGH7NuQQwm2kf6trJ/ct0b9Vp3+rayf3LdG/Vad/q2sn9y3R\nv1Wnf6trJ/ctWdL+rfzk50lSVUcl+XiSSvKiJAcleWqS85J8T3efP7B5AAAAAGxiRwRTSVJVRyd5\ncaZD+jrJe5Ic391njGwXAAAAAJvbMcEUAAAAAKtl5eeYAgAAAGA1HTy6AQAjVNV3dPd5o9vBzldV\nz0py+tqlu/9lcJOG8tqDxaiq7+7uT49uB1urqq6R5DrdfeHotgDLb1X3Ox3Kt82qqpLcqLv3jm4L\nV878GN41yY9399NHt4fLzGfm/OUku5OcleQPuvv3N9R8Z5InJXl8d3/Htjdyi1TVjZJ8V5IvdPcX\nR7dnq1XVMd398dHt2B9V9Y1Mcx+u+b9J/jHTDsPacv0OxNe3vZFX0dX5tbfqqurdB3iT7u4f3pLG\ncECqau3M1M/t7n8Y3Z5Fq6pfT/JH3f2/N6y/QZKvdfc31q17SJLf6e4jtrmZV0pVvTHJy7v7A+vW\n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\n62UaWfnwTHO7bfSVTJNp/0p3f2k723ZVHMBj98VMZwH93a1sz6Lt9Ofmge53VtUPdveHtr2hGwim\ntllVXSfTsLnPdvc5V1S/bKpqfUhx0HxZ2yG6XqadhYOy7nCx7v78tjVwQebRUgd19+fm69dN8t2Z\nfvHYm+mMPj/W3U8b18oDdyV+oUt332prWrNYVfXeJD91Ra+rqrp5kt/INAfHyhzOvOG1tz+654nS\nV0FV/WiSr11h4Vye5Iju3jhv31Kqqn9McsKqjbDcX/Notyfv4P6tvfaunekz7tq57Cxum1qlz72d\n/vitN38ZeUumk4BckTsl+Q/L/GVk7s9mn+m1yfrKin25WlNVD0/ymCTH5vKHtX01yV9nmk7iL0a0\nbStU1aGZTmzy40l+NNOIm6zaY3cl9ltW6r1zo3m6k92ZnqOXZjrj57k9ndxlpeznY3fe2iHRVXWb\n7j5ti5u1MAfw3Dwo0w/3v9TdD9vCJi3U/J3oP3b3l6+g7uaZfux9yDJ8JxJMLdi32UlY77xMcxe8\nYBUPm6qqB2Wa6PxWmY6p/ul5/fcm+d+Z+v/pJCd29ynDGnol7OS+7XRVdWmmoak/2d0f32T79TLN\nxXF8puG6H+3uY7e3lVdNVd0p01xLd850SNu5uWwC9I16GT5k9tf8+G26Kft4T12VnfT5c+FR3f26\n0W3ZCju9f0lSVcdnOovuDeZV30jyhiS/MM9LtLKuDo/fmp32K/mG/nSSd2c6q/DfZ3qOfovufu02\nNG0hqqqSnJzpLFmV5MuZPucvzHQWxVtkOlyqM809eMKgpl5l8xfltTlO75Vp+ojK9GPoX2aaPmIl\nfoxZU1W3TfLF7v7qFRavqKo6MtN+5d+vH4lZVU9K8txMP9r/S5Jn9BJMLn0g5rmxnpwpbDsryR9k\nOlPdpetqbpfpKKGHdvc1R7Rz0XZCMLyq34lW5kvLCnl/rjiYun6SH0jy1qp6SK/QmVOq6scyTd73\nz0l+L9Ox1WvOTPK8TDsKD0zylqq6f3e/a7vbeWXs5L6tmX8Z/3a+kWn+ng9nmsPnM1vfqoV5cKaJ\n+/5XVT1mbQdu3rF9bKbDxG6c5AuZhlS/fl93tIyq6u5J3pHpsMtTk6xNjFqZjoc/O9PkhnfN9N7+\n0gHNvCrWHwO/X1+wWCo79leuqnpkkt/M9IPSOzL19fszTTR9zUyHcKy6Hfv4bXCf0Q1YsAdlGtl1\nx3n5w/PlK5lOD/7hTO+jH+7uMwa18ap4ZKbP9vdkGnX6LSPdquoOSV6U5Piqemd3/+U2t/FKm08s\nsBZG/dtMn4OXZHqv+d4k/znJ/1jhw70/k+TRSXZk6F1Vd07y9kwjpF66bv3jMj0nz563/2CSV1XV\nl7v7z0e09UBV1QOSvDLTfFmfzjRq6JmZ+vqkqrp9ph9KH5z/v717j5WrquI4/v0VqSmoAYpAFBQS\noihWwQdSHiJioPVBqgEkhkAJRmOQEKKh4pMEUBQNCUoQgkaQAPGFbQw0KBZCy8uaaBp5yaOIWsCm\nVhCwgF3+sfbQ6WVuO8OdO+fuc3+f5ObezpyZ7pNz5uzZ66y9dmYVLW6oqUOxlcDwT4DakhGqHBM5\nY6ohknYHbgHWRsR7m25PvyStJO9UHRER49bzKTUA7gDWRcRBo2rfRLR53zr6nMo3m+x4ngUOnwpz\njvtVOsrryKVRv0l+xi4A5pDTxM4HLoyILRXsn5Ik3UreGf5gRDxaHtuVDJrOj4gby2NvIANVt0XE\nwoaaOzDlMu7dA6w9ylPVD7BKVsO99F4Rs5eIiCMmsUlDNQ32r5Mt++6I2Nj1+IXkSkuvj4hqV/Fp\n+/GbTiTtyObX0f3IMgSQU09XRsT8hpo3MEk3kTdc5mzle9m2wJ+AByPio6Nq30RIehzYufxzJXkz\ndBlwK3kD+x/AvE7fXqNe2ZilZuu3gIsi4t7GGjcEkn4HvJ0MAiyPiOcl7QSsJm/yHhARa5Qr190G\nPBkR72uswQOQdCO5b3Mj4uFS6+wqYAG5GuHHyRuli8ksqn6mR08pfQSGP0vFgeEax0TOmGpIRPxN\n0mVktLkm+5K1KLZYZDoi1ku6hPwg1KLN+wZAROzZz3bK1SWXAOcCR05mm4YpIu6R9B7y7saXgLPI\nTuZS4Os1zvPv8i7gy52gVJfuTCMi4q/l/Kzq2hIRi+m649ZjgPUhMqUc5RLhVQ2wyOXc9+lz2xq/\nBLV5//YBzu4OShVXAKeX56sNTBVtPn7Tycaunyg/nT4iqC/79B1kAGNr38uel3QtcOpomjUUM9i8\n/x577NpqO+AzZK23qgNT5OyX8yNiWddjp5HT9z4VZQW+iHhG0lXkdPBazAF+FBEPA0TERknfBo4n\np9ZWG5CCnoHh7/DSwPDqWoNSUOeYqJoVm1pqA/Udg7X0/+V1d7KeVi3avG8DKR3NJeS0sKpExFMR\nsYAMzASZpnrRVLwAD+hpsrN8UcnS2LbHHdXXUd+1ZazxBlidmlO1DbAWRsSMPn+qqWPQpc3790p6\nZxM91vV87dp8/FpL0tGSvibpl2WRhXXATWRtm93J2kTHAXtFxC4R8eHmWvuy7ED24f14lFwxuRa7\nAIeQ2UPbA4vI47WenDYUZPmINtLWN6nCBrIAPwCSZpJBt0eAsfXAXqCuhJBdyRXcuq0pv0+MiI/V\nGpQqOoHhzrnYysBwbWOimj4grVLSOk8CHmi6LQO6BjhD0iPA9yJiQ6+NJJ0AfA744SgbN0Ft3reX\nYwOb6hhNeZJ6Lf/9ILA3cJekX7B5ZxMRccpIGjccvwa+IOlusjB/AERXEUp4sVjlaWS9tGpIOprM\njupkSHW+kD9FTuW7gazz9vuoeNUeq1avQGiM+W02ar9i8/NvGTnt+T42nbPbAYdlaRFiqtQS6dMM\n4GRJh/ax7d5UdEOm9OG3lZ+zlKtBH01OKzqUHDBfKukc4Hqy+HnrV86szJ3k+XlF5Op055EBnTO7\nM23KVNMTyM9lTZ4b5/HaM4QhA8Nz2TSVbxFwJhlAXEXlgeFax0SuMTVk45wIY70aOAjYDTg9Ir4/\nua0aHkmzgKVkp/ksOaf/0fL3K4DXkgPLnckPwIERMe6S2lNJm/dtUJL2Ib8I3VPLHda2rbY0lqSd\nyRoUbyHvqK4iMzb+S56fu5Dn52yygP+BnTTyGvRY0bTXAKtbNQOstq96Nk32bx1Zg7DbDLIg7Foy\nkN8RETHwMulNafvx61ZqwgxiStfT2kK/17mWjs1Mqa3fa3W/Pp5Sh2keGaiaT2aCVbdv5fid1N1X\nl9qYa4CjosKVybuVshd3kJ+3Z4Adye8s+0XEBkmzyWDHPOBtwKkR8YOm2juIcuyWs3kCxSwyA/O3\nwN/HvGRKBDZerh6B4W3J4/oEFQaGa712OjA1ZAOcCGuAb0TExZPZnskgaRuyINwpZGG8sV981gNX\nA1+NiH+NuHkT0uZ964ek+8mOdSfyTsncWlJ1y4oaA6kt86Ys73oG8El6Tzt9EvgpucLGE6Ns20S1\neYBVzs21EfF0022ZDNNg/1YzYFZUROw1Oa0ZvrYfv261flkfj6TDBn1NRNwyGW2ZDNOhX9+aUnT6\nYOAjEbGo6fYMYpyFFWaSmSqryIB/tykdCO5F0sHAV4A3kjfTFkXEY+W5N5MrE74AfDcizmqsoQNq\n27VyEG0IDNd67XRgasj6PBHWl5TP6pWB8l5kFthG4J8RMXZOcpXavG/jkfQAm7LFLoyIPzTcJBuH\npNcAe5IrKP6PzNp4KCq9qLd9gGVmZjadTOfgBrw4E2N/4N7aZljUGtgYtpoDwzVyYMrMzMzMzMzM\nzBpRTZFAMzMzMzMzMzNrFwemzMzMzMzMzMysEQ5MmZmZmY2IpHMk3SlpSSmyOpH32kHSgmG1zczM\nzKwJDkyZmZmZjYCkg8ilqA8ElgKfnuBb7gA4MGVmZmZVc2DKzMzMbDSOAq4vq2cuBR6QdI2kFZKu\nljRT0kJJCwEkvV/S2eX35ZJ+I+k+SR+QdDzwM2C+pOWS5pTX3CzpOEl/lLSbpGMlnVeeO0bSuc3s\nupmZmVlvDkyZmZmZjcauwDqAiHgI2AO4OyIOBv4CnLyF1x4OHAOcCBwfEdcCxwI3RMQhEbGqa9t3\nAvtHxGPAEmBeefwTwJVD3B8zMzOzCXNgyszMzGw0ngReBSDpAOAC4Pby3O3AW8dsP6vr7+si4t/A\n48DMrfw/55asLCJiA7BS0pHA7Ii4f2K7YGZmZjZcDkyZmZmZjcYKcjofZAbUF8l6U5TffwaeowSv\ngPldr/1Pj/d7FtgeQJI6D0bE2G2vBC4Dfj6BtpuZmZlNCgemzMzMzEZjCVlX6i7gEODHwL6SVgBv\nKv++CThO0sXANlt6s4h4HHha0nLg9C1st6L8ee1Ed8DMzMxs2FQyvc3MzMysZSTNAm4GlkfE5xtu\njpmZmdlLODBlZmZmZmZmZmaN8FQ+MzMzMzMzMzNrhANTZmZmZmZmZmbWCAemzMzMzMzMzMysEQ5M\nmZmZmZmZmZlZIxyYMjMzMzMzMzOzRvwfLjp7lnd3bmUAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 1440x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['ENG', 'NIR', 'SCT', 'WLS'], dtype='object', name='State/Province')"
      ]
     },
     "execution_count": 61,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby(by=[\"Country\", \"State/Province\"]).count().loc[\"GB\"].index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MultiIndex(levels=[['AD', 'AE', 'AR', 'AT', 'AU', 'AW', 'AZ', 'BE', 'BG', 'BH', 'BN', 'BO', 'BR', 'BS', 'CA', 'CH', 'CL', 'CN', 'CO', 'CR', 'CW', 'CY', 'CZ', 'DE', 'DK', 'EG', 'ES', 'FI', 'FR', 'GB', 'GR', 'GT', 'HU', 'ID', 'IE', 'IN', 'JO', 'JP', 'KH', 'KR', 'KW', 'KZ', 'LB', 'LU', 'MA', 'MC', 'MX', 'MY', 'NL', 'NO', 'NZ', 'OM', 'PA', 'PE', 'PH', 'PL', 'PR', 'PT', 'QA', 'RO', 'RU', 'SA', 'SE', 'SG', 'SK', 'SV', 'TH', 'TR', 'TT', 'TW', 'US', 'VN', 'ZA'], ['0', '1', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '2', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '3', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '4', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '5', '50', '51', '52', '53', '54', '55', '57', '6', '60', '61', '62', '63', '64', '65', '7', '70', '73', '74', '77', '8', '80', '81', '83', '84', '9', '90', '91', '92', 'A', 'A1', 'AB', 'AG', 'AGU', 'AH', 'AJ', 'AK', 'AL', 'ALA', 'ALX', 'AM', 'AN', 'AP', 'AR', 'ARE', 'AST', 'AW', 'AZ', 'B', 'BA', 'BB', 'BC', 'BCN', 'BCS', 'BE', 'BI', 'BL', 'BM', 'BS', 'BT', 'BU', 'BW', 'BY', 'C', 'CA', 'CAJ', 'CAM', 'CHA', 'CHH', 'CHP', 'CJ', 'CL', 'CO', 'COA', 'COL', 'CT', 'CUS', 'CW', 'CYI', 'CYQ', 'D', 'DA', 'DC', 'DE', 'DIF', 'DJ', 'DK', 'DL', 'DS', 'DU', 'DUR', 'ENG', 'ES', 'F', 'FA', 'FL', 'FR', 'FU', 'GA', 'GE', 'GR', 'GRO', 'GT', 'GU', 'GUA', 'HA', 'HB', 'HE', 'HH', 'HI', 'HID', 'HN', 'HR', 'HSQ', 'HSZ', 'HUA', 'IA', 'IB', 'ICA', 'ID', 'IL', 'ILA', 'IN', 'IR', 'IS', 'J', 'JA', 'JAL', 'JB', 'JI', 'JK', 'JM', 'JS', 'JT', 'JUN', 'JW', 'K', 'KA', 'KDA', 'KEE', 'KHH', 'KI', 'KS', 'KU', 'KY', 'L', 'LA', 'LAL', 'LAM', 'LD', 'LI', 'LIM', 'LU', 'M', 'MA', 'MB', 'MC', 'MD', 'ME', 'MH', 'MI', 'MIA', 'MIC', 'MN', 'MO', 'MOR', 'MOS', 'MOW', 'MS', 'MT', 'MU', 'MX', 'MZ', 'N', 'NAN', 'NAY', 'NB', 'NC', 'ND', 'NE', 'NH', 'NI', 'NIR', 'NJ', 'NL', 'NLE', 'NM', 'NS', 'NSW', 'NU', 'NV', 'NW', 'NY', 'O', 'OAX', 'OH', 'OK', 'ON', 'OR', 'OV', 'PA', 'PE', 'PEN', 'PH', 'PIF', 'PIU', 'PM', 'POS', 'PR', 'PUE', 'QC', 'QLD', 'QUE', 'R', 'RI', 'RJ', 'RK', 'RM', 'ROO', 'ROS', 'RP', 'S', 'SA', 'SAB', 'SAM', 'SC', 'SCT', 'SD', 'SFO', 'SG', 'SH', 'SIN', 'SJ', 'SK', 'SL', 'SLP', 'SM', 'SN', 'SON', 'SP', 'SPE', 'SS', 'SU', 'SVE', 'TAB', 'TAM', 'TAO', 'TH', 'TM', 'TN', 'TNN', 'TNQ', 'TPE', 'TPQ', 'TTT', 'TU', 'TX', 'TXG', 'TXQ', 'TYU', 'U', 'UP', 'UQ', 'UT', 'V', 'VA', 'VAN', 'VBR', 'VD', 'VER', 'VIC', 'VLG', 'VS', 'VT', 'WA', 'WAL', 'WI', 'WLS', 'WP', 'WV', 'WY', 'X', 'YAR', 'YO', 'YT', 'YUC', 'YUN', 'Z', 'ZAB', 'ZAC', 'ZG', 'ZH', 'ZP']],\n",
       "           labels=[[0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 10, 10, 10, 11, 12, 12, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 19, 19, 20, 21, 21, 21, 21, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 30, 31, 32, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 34, 34, 34, 35, 35, 35, 35, 35, 35, 35, 36, 36, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 40, 40, 40, 40, 40, 40, 41, 41, 42, 42, 42, 43, 44, 44, 45, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 48, 48, 48, 48, 48, 48, 48, 49, 49, 49, 49, 49, 49, 49, 50, 50, 51, 51, 52, 52, 53, 53, 53, 53, 53, 53, 53, 53, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 55, 55, 55, 55, 55, 55, 55, 55, 56, 57, 57, 57, 58, 59, 59, 59, 59, 59, 59, 59, 59, 60, 60, 60, 60, 60, 60, 60, 60, 60, 61, 61, 61, 61, 61, 61, 62, 62, 62, 62, 63, 63, 63, 63, 63, 64, 65, 65, 65, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 68, 68, 68, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 71, 71, 72], [60, 80, 92, 134, 142, 261, 275, 307, 93, 108, 198, 266, 326, 23, 45, 70, 233, 256, 315, 91, 94, 268, 99, 311, 312, 316, 320, 12, 16, 5, 6, 7, 99, 102, 300, 266, 260, 284, 100, 232, 76, 96, 200, 221, 229, 232, 242, 246, 255, 278, 329, 77, 99, 103, 141, 144, 197, 274, 313, 335, 336, 100, 195, 262, 317, 3, 4, 5, 6, 7, 14, 15, 16, 25, 26, 27, 28, 29, 30, 31, 36, 37, 38, 39, 40, 41, 46, 47, 48, 49, 55, 56, 57, 58, 72, 73, 127, 74, 277, 122, 1, 12, 23, 45, 176, 209, 253, 95, 99, 106, 107, 151, 152, 153, 226, 236, 265, 275, 279, 282, 292, 7, 67, 68, 69, 131, 84, 108, 177, 76, 86, 100, 108, 116, 120, 162, 198, 199, 202, 215, 286, 332, 333, 10, 12, 137, 74, 93, 108, 125, 138, 170, 181, 218, 238, 258, 266, 305, 309, 136, 227, 271, 322, 75, 93, 190, 198, 148, 105, 94, 104, 173, 174, 175, 178, 180, 182, 186, 234, 259, 279, 281, 282, 286, 287, 328, 108, 190, 198, 87, 132, 157, 182, 204, 294, 306, 85, 168, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 53, 60, 65, 70, 4, 3, 19, 20, 21, 22, 24, 25, 36, 37, 38, 39, 40, 41, 42, 43, 44, 79, 139, 150, 171, 188, 215, 83, 90, 94, 100, 171, 190, 3, 199, 201, 78, 97, 98, 111, 113, 114, 118, 119, 129, 135, 146, 149, 155, 172, 207, 210, 216, 220, 230, 239, 254, 257, 263, 276, 280, 283, 289, 290, 314, 330, 334, 1, 2, 4, 5, 6, 7, 8, 12, 34, 45, 53, 60, 65, 144, 145, 221, 225, 244, 308, 336, 3, 4, 8, 9, 12, 23, 53, 218, 266, 199, 215, 1, 65, 89, 110, 121, 163, 179, 192, 193, 196, 250, 0, 1, 2, 23, 35, 36, 45, 53, 60, 248, 133, 194, 199, 217, 251, 279, 323, 337, 253, 1, 3, 5, 126, 93, 96, 115, 120, 130, 169, 248, 293, 183, 211, 212, 264, 269, 285, 288, 304, 327, 1, 12, 23, 34, 53, 60, 76, 108, 238, 305, 1, 12, 23, 34, 45, 101, 195, 267, 286, 2, 3, 4, 5, 6, 8, 13, 14, 17, 24, 25, 26, 28, 35, 36, 38, 39, 40, 46, 48, 52, 54, 59, 61, 62, 63, 64, 66, 67, 68, 69, 71, 266, 1, 2, 3, 8, 9, 13, 14, 19, 20, 23, 25, 26, 27, 28, 29, 32, 36, 37, 43, 50, 51, 53, 60, 70, 112, 252, 273, 112, 123, 124, 158, 159, 160, 166, 184, 185, 206, 219, 247, 249, 291, 295, 296, 297, 298, 299, 302, 303, 331, 81, 82, 88, 92, 109, 117, 120, 127, 128, 140, 143, 154, 161, 164, 165, 167, 187, 189, 191, 199, 202, 203, 205, 208, 209, 213, 214, 222, 223, 224, 225, 228, 231, 235, 237, 240, 241, 243, 245, 259, 270, 272, 294, 301, 308, 310, 318, 319, 321, 324, 325, 156, 274, 147]],\n",
       "           names=['Country', 'State/Province'])"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby(by=[\"Country\", \"State/Province\"]).count().index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Rank</th>\n",
       "      <th>Title</th>\n",
       "      <th>Genre</th>\n",
       "      <th>Description</th>\n",
       "      <th>Director</th>\n",
       "      <th>Actors</th>\n",
       "      <th>Year</th>\n",
       "      <th>Runtime (Minutes)</th>\n",
       "      <th>Rating</th>\n",
       "      <th>Votes</th>\n",
       "      <th>Revenue (Millions)</th>\n",
       "      <th>Metascore</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>Guardians of the Galaxy</td>\n",
       "      <td>Action,Adventure,Sci-Fi</td>\n",
       "      <td>A group of intergalactic criminals are forced ...</td>\n",
       "      <td>James Gunn</td>\n",
       "      <td>Chris Pratt, Vin Diesel, Bradley Cooper, Zoe S...</td>\n",
       "      <td>2014</td>\n",
       "      <td>121</td>\n",
       "      <td>8.1</td>\n",
       "      <td>757074</td>\n",
       "      <td>333.13</td>\n",
       "      <td>76.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>Prometheus</td>\n",
       "      <td>Adventure,Mystery,Sci-Fi</td>\n",
       "      <td>Following clues to the origin of mankind, a te...</td>\n",
       "      <td>Ridley Scott</td>\n",
       "      <td>Noomi Rapace, Logan Marshall-Green, Michael Fa...</td>\n",
       "      <td>2012</td>\n",
       "      <td>124</td>\n",
       "      <td>7.0</td>\n",
       "      <td>485820</td>\n",
       "      <td>126.46</td>\n",
       "      <td>65.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>Split</td>\n",
       "      <td>Horror,Thriller</td>\n",
       "      <td>Three girls are kidnapped by a man with a diag...</td>\n",
       "      <td>M. Night Shyamalan</td>\n",
       "      <td>James McAvoy, Anya Taylor-Joy, Haley Lu Richar...</td>\n",
       "      <td>2016</td>\n",
       "      <td>117</td>\n",
       "      <td>7.3</td>\n",
       "      <td>157606</td>\n",
       "      <td>138.12</td>\n",
       "      <td>62.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>Sing</td>\n",
       "      <td>Animation,Comedy,Family</td>\n",
       "      <td>In a city of humanoid animals, a hustling thea...</td>\n",
       "      <td>Christophe Lourdelet</td>\n",
       "      <td>Matthew McConaughey,Reese Witherspoon, Seth Ma...</td>\n",
       "      <td>2016</td>\n",
       "      <td>108</td>\n",
       "      <td>7.2</td>\n",
       "      <td>60545</td>\n",
       "      <td>270.32</td>\n",
       "      <td>59.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>Suicide Squad</td>\n",
       "      <td>Action,Adventure,Fantasy</td>\n",
       "      <td>A secret government agency recruits some of th...</td>\n",
       "      <td>David Ayer</td>\n",
       "      <td>Will Smith, Jared Leto, Margot Robbie, Viola D...</td>\n",
       "      <td>2016</td>\n",
       "      <td>123</td>\n",
       "      <td>6.2</td>\n",
       "      <td>393727</td>\n",
       "      <td>325.02</td>\n",
       "      <td>40.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Rank                    Title                     Genre  \\\n",
       "0     1  Guardians of the Galaxy   Action,Adventure,Sci-Fi   \n",
       "1     2               Prometheus  Adventure,Mystery,Sci-Fi   \n",
       "2     3                    Split           Horror,Thriller   \n",
       "3     4                     Sing   Animation,Comedy,Family   \n",
       "4     5            Suicide Squad  Action,Adventure,Fantasy   \n",
       "\n",
       "                                         Description              Director  \\\n",
       "0  A group of intergalactic criminals are forced ...            James Gunn   \n",
       "1  Following clues to the origin of mankind, a te...          Ridley Scott   \n",
       "2  Three girls are kidnapped by a man with a diag...    M. Night Shyamalan   \n",
       "3  In a city of humanoid animals, a hustling thea...  Christophe Lourdelet   \n",
       "4  A secret government agency recruits some of th...            David Ayer   \n",
       "\n",
       "                                              Actors  Year  Runtime (Minutes)  \\\n",
       "0  Chris Pratt, Vin Diesel, Bradley Cooper, Zoe S...  2014                121   \n",
       "1  Noomi Rapace, Logan Marshall-Green, Michael Fa...  2012                124   \n",
       "2  James McAvoy, Anya Taylor-Joy, Haley Lu Richar...  2016                117   \n",
       "3  Matthew McConaughey,Reese Witherspoon, Seth Ma...  2016                108   \n",
       "4  Will Smith, Jared Leto, Margot Robbie, Viola D...  2016                123   \n",
       "\n",
       "   Rating   Votes  Revenue (Millions)  Metascore  \n",
       "0     8.1  757074              333.13       76.0  \n",
       "1     7.0  485820              126.46       65.0  \n",
       "2     7.3  157606              138.12       62.0  \n",
       "3     7.2   60545              270.32       59.0  \n",
       "4     6.2  393727              325.02       40.0  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "movie = pd.read_csv(\"./IMDB/IMDB-Movie-Data.csv\")\n",
    "movie.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6.7231999999999994"
      ]
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "movie[\"Rating\"].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(644,)"
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "movie.Director.unique().shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(644,)"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.unique(movie.Director.values).shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABI8AAAHTCAYAAACugTgpAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAHABJREFUeJzt3X+s3Xd93/HXmxmWEIOb8sOwDGHW\nsGwrVobiMGhCuTdVItYkUGCdEIlKoMhsFRIlFluYxLRq3dSMsQ6JChZtUymCeisZG4vHgCRYg9KQ\nEW1JGAO1MDOCULo0G2CgYWGf/eFjNVz8Tk5OfO73HPvxkK587rnn3PvOzTv2ydPf7/fWGCMAAAAA\ncCKPm3oAAAAAAFaXeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAA\nAAAt8QgAAACA1o6pB5jHU5/61LFnz56px5jUd77znZx11llTj8Easjssyu6wKLvDouwOi7I7LMru\nsIhTaW/uuOOO+8YYT3ukx61FPNqzZ08+97nPTT3GpA4fPpyNjY2px2AN2R0WZXdYlN1hUXaHRdkd\nFmV3WMSptDdV9dV5Hue0NQAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKP\nAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAA\nAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt8QgAAACA1o6pBwAAgGXbc92hqUdgiyO/dvnUIwAwJ0ce\nAQAAANASjwAAAABoOW0NAADYdifzVMIDex/MNU5NPCmcTgiciCOPAAAAAGiJRwAAAAC0xCMAAAAA\nWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFri\nEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAAALTEIwAAAABa4hEA\nAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAA\nAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt\n8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaJ30eFTHvK+qbquqj1TVFVV1T1V9evZ2\nXlWdUVU3VdWdVfX+qqqTPQcAAAAAj90yjjy6KMmOMcYLkzw5yf9L8p4xxsWzty8luTrJPWOM85Oc\nneTSJcwBAAAAwGO0jHh0b5J3zW5/f/brq6rq9qq6cXaU0SVJPjH72K1JNpcwBwAAAACPUY0xlvOJ\nq16R5M1J3pjk3DHGoar6TJK/k+RtSd4xxri5qt6Q5MIxxhu3PH9/kv1Jsnv37gsOHjy4lDnXxdGj\nR7Nz586px2AN2R0WZXdYlN1hUcvcnbu//s2lfF5Ww+4zk3u/N/UUp4a95+yaeoRt5c8sFnEq7c3m\n5uYdY4x9j/S4Hcv44lX1shwLR1cmeUKSI7MPHUny9CT3JTn+u9Ku2fs/ZIxxQ5IbkmTfvn1jY2Nj\nGaOujcOHD+d0/x6wGLvDouwOi7I7LGqZu3PNdYeW8nlZDQf2Pph33r2U/7U57Ry5amPqEbaVP7NY\nxOm4N8u4YPYzkrw1yeVjjG8nuTbJq6vqcUmel+TzSW5JctnsKZck+eTJngMAAACAx24Z1zx6bZJn\nJvlYVX06yXeTvC7JZ5N8eIzxhSQfSHJOVd2V5P4ci0kAAAAArJiTfmznGOP6JNdvufsfbHnMA0mu\nONlfGwAAAICTaxlHHgEAAABwihCPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQA\nAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAA\nQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAAALTEIwAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBL\nPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwC\nAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAAQEs8AgAA\nAKAlHgEAAADQEo8AAAAAaIlHAAAAALTEIwAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACg\nJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUe\nAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEA\nAADQOunxqI55X1XdVlUfqaqdVXVTVd1ZVe+fffyMrfed7DkAAAAAeOyWceTRRUl2jDFemOTJSV6f\n5J4xxvlJzk5yaZKrT3AfAAAAACtmGfHo3iTvmt3+fpK/l+QTs/dvTbKZ5JIT3AcAAADAiqkxxnI+\ncdUrkrw5yf9Ncv0Y4+aqekOSC5PsSfKOh943xnjjlufvT7I/SXbv3n3BwYMHlzLnujh69Gh27tw5\n9RisIbvDouwOi7I7LGqZu3P317+5lM/Lath9ZnLv96ae4tSw95xdU4+wrfyZxSJOpb3Z3Ny8Y4yx\n75Eet2MZX7yqXpZj4ejKJO9Ncvx3oF1J7kuy8wT3/ZAxxg1JbkiSffv2jY2NjWWMujYOHz6c0/17\nwGLsDouyOyzK7rCoZe7ONdcdWsrnZTUc2Ptg3nn3Uv7X5rRz5KqNqUfYVv7MYhGn494s44LZz0jy\n1iSXjzG+neSWJJfNPnxJkk829wEAAACwYpZxzaPXJnlmko9V1aeTPD7JOVV1V5L7cywcfeAE9wEA\nAACwYk76sZ1jjOuTXL/l7n+25f0Hklxxsr82AAAAACfXMo48AgAAAOAUIR4BAAAA0BKPAAAAAGiJ\nRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcA\nAAAAtMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAA\nALTEIwAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0\nxCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtHZM\nPQAAAACrYc91h6YeYVsd2Ptgrlnxf+Yjv3b51COAI48AAAAA6IlHAAAAALTEIwAAAABa4hEAAAAA\nLfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3x\nCAAAAICWeAQAAABAa654VFU/sexBAAAAAFg98x559OtVdWtV7a+qXUudCAAAAICVMVc8GmO8LMkr\nk/wgyW1V9a+r6oVLnQwAAACAye2Y50Gz09auSvKzST6V5ENJ3pPk+csbDQAAAICpzRWPkvzTJL+V\n5PoxxgNJUlVPWtpUAAAAAKyEueLRGOPKqnriGOOBqvqJMcaXxxg3Lns4AAAAAKY1709b+9Ukf7+q\n/lSS91bV313uWAAAAACsgnl/2tplY4wDY4wfjDEuTfLSZQ4FAAAAwGqYNx4draoXVNXjZj9l7YFl\nDgUAAADAapj3gtlvSPKOJOcl+eLsfQAAAABOcfNeMPsrVfWmJE84ftfyRgIAAABgVcwVj6rq3yZ5\nfJJ7k1SOxaPXL3EuAIC1tOe6Q1OPsLYO7H0w1/j+AcDKmfe0tWeOMf7KUicBAAAAYOXMe8Hs36mq\nX6qqJy51GgAAAABWyrxHHl0++/XnqypJxhjjkuWMBAAAAMCqmPeC2ZtJUlU/luT7Y4zvPtzjq+rx\nSf7NGOPKqnppkn+e5Mjsw7+Y5KtJPpTkWUnuSvILYwwX4QYAAABYMXOdtlZVV1fV55N8Jskbquod\nD/PYM5PckeTSh9z9njHGxbO3LyW5Osk9Y4zzk5y95bEAAAAArIia54Cfqro9yUVJPj7G2Kyq28cY\nL3iE5/zBGOPc2ZFH/zDJg0m+luSvJflAkhvHGDdW1bVJnjbGeNuW5+9Psj9Jdu/efcHBgwcX+Mc7\ndRw9ejQ7d+6cegzWkN1hUXaHRZ3uu3P317859Qhra/eZyb3fm3oK1pHdYVHrsDt7z9k19QhscSq9\n1tnc3LxjjLHvkR437zWPvpPkRUlSVc9O8u1HMcuXk7x9jHGoqj6T5CVJnpLk+CurbyU5b+uTxhg3\nJLkhSfbt2zc2NjYexZc89Rw+fDin+/eAxdgdFmV3WNTpvjt+1PziDux9MO+8e96Xp/An7A6LWofd\nOXLVxtQjsMXp+Fpn3p+2tj/JW5I8PcmvJ/mlR/E17k9y8+z2kdnnuC/J8Xy6a/Y+AAAAACtm3nj0\nQJJfTvKzs18fzYF91yZ5dVU9Lsnzknw+yS1JLpt9/JIkn3wUnw8AAACAbTLv8Xm/kmQkeWKSFye5\nO8lL53zuu5P8dpI3JfnwGOMLVfXlJK+sqruS3JljMQkAAACAFTNXPBpjvO747ao6K8k/nuM5585+\n/UaSjS0feyDJFY9mUAAAAAC237ynrT3USPKskz0IAAAAAKtnriOPquqh1yR6IMn7lzMOAAAAAKtk\n3tPWNpc9CAAAAACrZ94jj76Y5MeT/H6S85Lcm+TeMcYlS5wNAAAAgInNe82jryZ5zhjjoiTPSfI/\nhSMAAACAU9+88ehpSfbMbj8nydOXMg0AAAAAK2Wu09aS/I0k76yqZyU5kmT/0iYCAAAAYGXMe8Hs\n26vqNUn+TJL/neQbS50KAAAAgJUw12lrVfW3kxxK8sEkP5PkN5c4EwAAAAArYt5rHv3cGONFSf5o\njPFbSZ67xJkAAAAAWBHzxqP/U1W/kOSMqnpJkvuXOBMAAAAAK2LeePTaJM/PsesdvTzJ65c2EQAA\nAAArY94LZv9hkrcseRYAAAAAVsy8F8z+D8seBAAAAIDVM+9pa/+1ql6+1EkAAAAAWDlznbaW5EVJ\nfrmqPp/kO0nGGOOS5Y0FAAAAwCp42HhUVW8aY7x7jLG5XQMBAAAAsDoe6bS1v378RlW9e8mzAAAA\nALBi5r3mUZL8paVNAQAAAMBKeqRrHj29ql6TpJI8Y3Y7STLG+OBSJwMAAABgco8Uj347yXNnt//V\nQ26PpU0EAAAAwMp42Hg0xviV7RoEAAAAgNXzaK55BAAAAMBpRjwCAAAAoCUeAQAAANASjwAAAABo\niUcAAAAAtMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlH\nAAAAALTEIwAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAA\nAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAA\ntMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAAALTE\nIwAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0FpKPKqqx1fVv5/dPqOqbqqq\nO6vq/XXMj9y3jDkAAAAAeGxOejyqqjOT3JHk0tldVye5Z4xxfpKzZ/ef6D4AAAAAVkyNMZbziav+\nYIxxblV9MMmNY4wbq+raJE9L8uyt940x3rbl+fuT7E+S3bt3X3Dw4MGlzLkujh49mp07d049BmvI\n7rAou8OiTvfdufvr35x6hLW1+8zk3u9NPQXryO6wqHXYnb3n7Jp6BLY4lV7rbG5u3jHG2PdIj9ux\nDbM8JcnxV1HfSnJec98PGWPckOSGJNm3b9/Y2NhY+qCr7PDhwzndvwcsxu6wKLvDok733bnmukNT\nj7C2Dux9MO+8eztennKqsTssah1258hVG1OPwBan42ud7fiv5L4kx1Pprtn7O09wHwAAAAArZjt+\n2totSS6b3b4kySeb+wAAAABYMdsRjz6Q5JyquivJ/TkWjk50HwAAAAArZmmnrY0xzp39+kCSK7Z8\n+ET3AQAAALBituPIIwAAAADWlHgEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAAALTEIwAA\nAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAA\nWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFri\nEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAAALTEIwAAAABa4hEA\nAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAA\nAC3xCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt\n8QgAAACAlngEAAAAQEs8AgAAAKAlHgEAAADQEo8AAAAAaIlHAAAAALTEIwAAAABa4hEAAAAALfEI\nAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0Nox9QAAwOL2XHdo6hF+xIG9D+aaFZwLAIDFOPIIAAAA\ngJZ4BAAAAEBLPAIAAACgJR4BAAAA0NqWeFRVL62qe6rq07O386vqpqq6s6reX1W1HXMAAAAA8Ohs\n55FH7xljXDzGuDjJhUnuGWOcn+TsJJdu4xwAAAAAzGnHNn6tV1XVy5N8Lcn3k3xodv+tSTaTfHwb\nZwEAAABgDjXGWP4XqXpukj8/xjhUVZ9JckGSy8cYN1fVG5JcOMZ445bn7E+yP0l27959wcGDB5c+\n5yo7evRodu7cOfUYrCG7w6Lsznq4++vfnHqEH7H7zOTe7009BevI7rAou8Oi1mF39p6za+oR2OJU\nep28ubl5xxhj3yM9bruOPLo/yc2z20eSPD/J8f8CdiW5b+sTxhg3JLkhSfbt2zc2NjaWPuQqO3z4\ncE737wGLsTssyu6sh2uuOzT1CD/iwN4H8867t/PgZk4VdodF2R0WtQ67c+SqjalHYIvT8XXydl3z\n6Nokr66qxyV5XpIDSS6bfeySJJ/cpjkAAAAAeBS2Kx69O8nrknw2yYeT/Isk51TVXTl2VNIt2zQH\nAAAAAI/CthyfN8b4RpKNLXdfsR1fGwAAAIDFbdeRRwAAAACsIfEIAAAAgJZ4BAAAAEBLPAIAAACg\nJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoCUe\nAQAAANASjwAAAABoiUcAAAAAtMQjAAAAAFriEQAAAAAt8QgAAACAlngEAAAAQEs8AgAAAKAlHgEA\nAADQEo8AAAAAaIlHAAAAALTEIwAAAABa4hEAAAAALfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA\n0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAIDWjqkHAAAAAE5sz3WHph6BLX7zpWdN\nPcK2c+QRAAAAAC3xCAAAAICWeAQAAABASzwCAAAAoOWC2QDMxcUaAQDg9OTIIwAAAABa4hEAAAAA\nLfEIAAAAgJZ4BAAAAEBLPAIAAACgJR4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3x\nCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANASjwAAAABoiUcAAAAAtHZMPQDAiey57tDUI5z2Dux9\nMNf49wAAAKc9Rx4BAAAA0BKPAAAAAGiJRwAAAAC0xCMAAAAAWuIRAAAAAC3xCAAAAIDWjqkHgKmd\n6j8S3o9bBwAA4LFw5BEAAAAArUniUVWdUVU3VdWdVfX+qqop5gAAAADg4U112trVSe4ZY1xRVTcl\nuTTJxyeaZVsteoqUU48AAACAKUx12tolST4xu31rks2J5gAAAADgYdQYY/u/aNXHkrxjjHFzVb0h\nyYVjjDduecz+JPtn756X5EvbPOaqeWqS+6YegrVkd1iU3WFRdodF2R0WZXdYlN1hEafS3jx7jPG0\nR3rQVKet3Zdk1+z2rpzgmz7GuCHJDds51Cqrqs+NMfZNPQfrx+6wKLvDouwOi7I7LMrusCi7wyJO\nx72Z6rS1W5JcNrt9SZJPTjQHAAAAAA9jqnj0gSTnVNVdSe7PsZgEAAAAwIqZ5LS1McYDSa6Y4muv\nMafwsSi7w6LsDouyOyzK7rAou8Oi7A6LOO32ZpILZgMAAACwHqY6bQ0AAACANSAeAQAAANASj1Zc\nHfO+qrqtqj5SVZNcp4r1U1U7qup3qup3q+pfTj0P66eq3lJVN089B+ujql5aVfdU1adnb+dNPRPr\no6r+VlV9qqo+WlVPmHoe1kNVbTzk95yvVdVrp56J9VBVZ1XVv5u9Vv5HU8/Deqiqs6vq8Gxv3j71\nPNtJPFp9FyXZMcZ4YZInJ7ls4nlYHz+X5M4xxkVJnllVf3nqgVgfVfXsJNdMPQdr6T1jjItnb1+a\nehjWQ1X9uSQ/OcZ4cZKPJvmzE4/EmhhjHD7+e06Su5L8l6lnYm1cleS22Wvln6yqvzj1QKyF1yT5\nb7O9uaiqnjP1QNtFPFp99yZ51+z296cchLXzH5P8k9nRaj+W5FsTz8N6eVeSt009BGvpVVV1e1Xd\nWFU19TCsjZ9JcnZV/ackL07yPyaehzVTVU9Mcu4Y466pZ2FtPJDkibM/q86I/9difk+a7U0lOW3+\ngl48WnFjjN8fY9xeVa9I8oQkH5t6JtbDGOPoGOO7SX43yb1jjK9MPRProapek+TOJF+YehbWzpeT\nvH2M8YIkz0zykonnYX08Lcn/GmP8dI4ddXTxxPOwfi5NcsvUQ7BWPpjkryb570m+OMb48sTzsB4+\nkGN/MX9jjgXIM6cdZ/uIR2ugql6W5M1Jrhxj/GDqeVgPVfWUqvrTSX4qx/42d3PqmVgbV+TYUQAH\nk1xQVW+aeB7Wx/1Jjl8n60iSp083CmvmW0mOn+b4lSTnTDgL6+nKJDdNPQRr5W1J3jvG+AtJfryq\nfmrqgVgbvzjGeGWOxaM/nHqY7SIerbiqekaStya5fIzx7annYa0cSPLzs+D43ZxGVZzHZozxmtm1\nI16d5I4xxrunnom1cW2SV1fV45I8L8nnJ56H9XFHkgtnt8/NsYAEc5mdPrKZ5NapZ2GtPCnJH89u\nP5Bk54SzsD5+Osl7Z39Jf36S2yaeZ9uIR6vvtTl26P/HZj9F4vVTD8Ta+I0kr6+q30vyR3HKI7B8\n707yuiSfTfLhMYZTH5nLGOP3ktxXVf85yZfGGLdPPRNr5cIcu4DtHz/iI+FP/EaSvzl7rXxmnPbI\nfD6aY9fI+lSSXx1jHJ14nm1TY4ypZwAAAABgRTnyCAAAAICWeAQAAABASzwCAAAAoCUeAQAAANAS\njwAAAABoiUcAAAAAtP4/MqIHTwzfLMUAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 1440x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "movie.Rating.plot(kind=\"hist\",figsize=(20, 8), grid=True)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n2Mlf89yZ45KkEMKipMWpQxskSUtLxT+S1GpJ3a40HEp5PvnMdlvqdKTBQJp+tUunU3xs9ni3W3yt\n8dedPh5C8fnTFhaK5w+HK48vLhbjmD4eQvH5WbZyoY6Pj0bFx8bWMqcsk/7Tf5K2bi3G0IQ5lXGe\nYpRuv31ll7rPqazzFKN0220r29R9TmWcp+zkb+pf85ri6zVhTlxPZ/Y8DQbFmrn88ubMievpzJ6n\npaXiWrriipVjqfOcpPWfp6Wl4vcyV15Z/HcT5jR9fD3naWmp+J595ZXF5zZhTtL6z9PSkvS1r0nb\nthWf34Q5jXE9nZnzNF4zr3udPdc6zmmM6+nMnKelJb3+2Pd17wu36KnFs9TOM7Wnxp6HoFG7o042\nUmtqjFmrpazVVjcbKkwNfdRqKTeOD9ttxdDSwmjlGIfttqKCFrKVf+A1aHcUFNWd+X3EoNNViPmK\n4zFIw3ZXrTxTZ2rs4+NrnVN3NOR6suY0vpa2bpU2bGjGnKat83rS175W/L/Bhg3NmNPs8bXM6ec/\nn6yZs89uxpzKOE9PPz3psrjYjDmVdZ6m2zzvec2YU1nnaQ3K2Aw5W9KCpA/GGJ8OIfyppE9OfTwY\n/+79bK4PSvqjU45+6lOTP4jbulXauVP6ylekQ4cmn7N9e/HPF78o3X//5PjOncVzPvc56dFHJ8ff\n8Q5py5bia0+f4N27pSSR9u6dGdkHpTSV9u+fHFtcLI4fPSrdfPPk+MaN0rvfLd19t3TgwOT4xRdL\nu3ZJ3/xm8YdFY2uZ06WXSt/9rnTddcUCaMKcyjhP731vcZOY7lL3OZV1nq65Rjp+fGWbus+pjPP0\n5jcXj5//vPT4482YE9fTmT1PmzYVj9/6lvTtqRc/1nlOXE9n9jyNf6N34oR0443NmJO0/vM0GkmH\nDxf/3pQ5SeWcp9FoMo+mzEla/3kajYoxDAZSv9+MOY1xPZ2Z8zReM/fcU/yhfxPmNMb1dGbO02ik\nyx/6Wx0/51v696+8Spc/dFjbjt+7/On3vXCLvvbSK7T96Hd12U+PLB+/c9MrdOemV+qtf/cNXfjE\nT5aPf3XLFTp8/ha9/e6/1LlPp8vHv3Tpb+jBX3iRfuc7X9JCNvmDoptevUNPLp6t3XfesmJK+7dd\now1LT2nX9yY/wmvQ7mr/lddo0xOP6OrDty8ff+ysRDdtfate/rMHdNWRu5aPP3jOBfrSZb+55jm1\n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\nzx+nCnOSln6c0lR67rn83PTd71ZjTlIxxylNpZe/XPqjP6rOnKSlH6c0lfbty+9/9Gg15jSH59OJ\nOU5pqk/v/ra+8Mbf172vfK2uuPdrOuNoZ/7mt1/0Fj3yslfqvX9/u5rp8A/rN71+o56dOk1b99yy\nYEo711+uFTNHtOWe3fP7erWGdr7pcq165qA2P3Dn/P4nT23rprWX6cInHtal++6e3//I6efo9ovf\nqjc++oDWH7hvfv/9Z63RN1+zThv2/1AXP75vfv+eVZdoz6rX6bKf/J3Ofeax+f3fWLNOD5y95rjn\nlGSZVj/9mLa9/Y91ymCmEnMq4jjNdfn2q1+vW193aSXmVNRxmmvD82nhnOa6TL/sHP3Fb15RiTkV\ndZySLJP+py9L/+JfSO9+d3XOudLSzk8PPphfz6xZI23eXI05FXGcPvnJYZdarRpzKuo43X77sM0F\nF1RjTkUcp9tu0/Eo5JUhIYTfl/R/xBjPnf11U9IRSZ+U9Dsxxn8+u78m6aikt8YYv2s8Dq8MWeyc\nBoP8N4qrrx4uFE36nIo4TjHmT8yrrhp2mfQ5FXWcYpQ+9an8L7jn2kz6nIo4Tmma/8XBVVflj1eF\nOfF8OrHHqdeTPvOZ/Pff+si/KZjkOfF8OrHHaWYm/5nZtu3YlzZP6pykpR+nmRnp+uulj388H08V\n5jS6fynHaWZG+vSnpWuvHZ7DJ31O0tKP08xM/nvMxz+ej6cKc5rD8+nEHKeZGX327e/Tjesv1/PN\nl5T+L6RH95f9r74bg77e/4Nb9dk3XaF+vV6JOc2PfQnHaa7L59a9U0emTq3EnMb3H++c5trwfFo4\np/mfmd94p45MnVKJOS0Y+xKfTw+89F7pYx+TVqyozjl3dP/xzOn55/PrmY9+VDrttGrMqYjj9Oyz\nwy5TU9WYU1HH6ciRYZuXvKQac5r0V4ZISpV/FsicoPzzSO6UdFUIoT77uSGvlzSQdI/1IDHGGUnz\ntUOYfVHJ1NTCv4iT8hiW0b98Wcz+8cd9of0h2PuTxN5fqw3/NfWoen3hX6DNeTFzGgzyx7baTOqc\nXmj/Yuc0MzOc0/jXJnVOUjHHaWZmeHueT0Nzv8E3m/b3ncQ5/bL9PJ+KO07W7Sd9TjyfXtz+xc4p\nBH/skzonaenHae7/qzSnOUud09zCWZXm9Mv2L2ZO9TrPpzk8nxY1pzSpKUvyx+zX7Nv36ovfHxXU\n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\nVXeannXD1e40Pf/rn3bn01qn6aVf+KBeOndHHjgzMzn75dL4jzUuuyxPg5RflDkN0zSK+XTZZRrG\nyL4zRJLMrKJ88mOjpGenlO41s3dJqqSUfqO4zXHK7wg5LqV0W9/9vXeG3Fr/3veWvjPkwXqmy3tn\nyOteJ513Hu8M6ZVSXjFf/nJeye69M+T1r5de8QreGdL/SvY3vjEvM7ySfflw1qf4nSFveUt+/OWd\nIaxPq31nyFveIm3bxjtD+t8Z8qY3Sa9+dR6faZim3uEH+M6Qtz/3t3XR6WcrmUr96sdRv5L9Jdd8\nWO84/Ww1Z2amYpr2jfsI3hnyO9d8WH/+tF9Su1KZimnqHX4gr2R/yTUf1kWnnaUH5g6ZimnqYn1a\nv1eyv+SaD+svT30Br2RnfVr1O0Necs2H9Zc/+gLeGcL6tOp3hnSXmfvnNkzFNI1iPh22cL+uO/xa\n6fzzeWdI/zTt2ZOPs88/n3eG9ExT4+67VTv6aGmN3xky6neG/Kmkx0p6Zkqpe/rvs8rv+Og6TdKu\n/hMhkpRSWpC0r7ZZ8SaSDRuWPxEn5Rie3idfVjO8/+8OGm7mD69U/OHVav7pNzOz/Am0rrVMU7st\nPe5xSyvBSuMeDZ+kaRo0fLXTtLi4/G1jvco6TdJo5tPiYv7oGq9NWadJOvD5tLiYz0J3N7arGfdo\n+KRM00rDWZ8ObD6Z5WVmdtYfnzJOUxfr0/rMJ7O8LlWr/t8p4zR1Hch8Msv7MmbTM029DmSazLTr\noT+076DUsziz+uFJpsWZ/b8qMFnFHd6pVLVY2X+a2pWq2s7wVtU/pIjGfdhpSibddNRxShULx71s\n09TrQOZTMunmo45TsumZpl7DTlN3mWkX6+g0TNNqh7M+DTeful26f3Mapqkf69No59O+ZaZ4onAa\npqkf69Po51N3melUWJ/2DZ+dze966H3+YRL2y1czfL2PNQ45ZP82ZZ+m9ZxPKxjZO0PMbKOkb0r6\nSUnX91yVJH1H+YTIxyV9SNI/p5T+1yr+5ryker1eX3pnCAAAADDlNm3bvvKNAAAAgCmx68Kt4x4F\nlEij0VCtVpPW+M6Q/U8NDm+LpEMkfUHSvT0/D5V0lqSXSfqGpJslXeD/Caxaq5U/R63VWvGmDyp0\nidHGR5cYbXx0idHGRxcfXWKtlk675auqdtor3/ZBpNpp0yVAGx9dYrTx0SVGGx9dYrTx0cVX7bQ5\n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\n0SVGGx9dYrTx0SVGGx9dYrTx0SVGGx9dfNVOW2f/8gV0cVQ7bd145jzPzYwIH5NVVu22dOWV+RJL\n6BKjjY8uMdr42m2ddsvXVO10xj0mE6fa6dDGQRcfXWK08dElRhsfXWK08dElRhsfXWK08dHFR5dY\ntdPhuZkR4mQIAAAAAAAAAACYapwMAQAAAAAAAAAAU40PGiurSkU65ZR8iSV0iVUq+s2vdXTlq/9J\nrSqrftdMu6Wdz2CZcbHMuGbaLW05ZrM6ZuMelYnTMdPXabMfuvjoEqONjy4x2vjoEqONjy4x2vjo\nEqONjy4+usQ6ZjzXOUKWUlr//8TsFEnvkfR4SZ+V9MKU0vdWcb95SfV6va75+fl1Hktg+m3atn3c\nozCRdl24ddyjMLFYZgAAAAAAAMaH563212g0VKvVJKmWUmqs9n7rfkrJzCqSPiLpY5JOlHS/pD9b\n7/936jWb0hVX5EssoUus2dSzbrhaM+3WuMdkosy0WywzEZYZ10y7RZcAbXx08dElRhsfXWK08dEl\nRhsfXWK08dElRhsfXXx0ifG81WgdjM89eaakoyT9SUqpZWavkfQ5MzsspbTnIPz/06nT0dve+EFd\n/G8dLc7MjntsJsZcq6lvH/4V6Ywzxj0qk6fT0RPu3Kl/e8wp4x6TiVJJSW9744dYlxxzrabOZZnZ\nTyUl1qUAbXx08dElRhsfXWK08dElRhsfXWK08dElRhsfXXx0iVVSknZ8mec6R+RgfNjY0yVdk1Lq\nntr7iqSqJJZuAAAAAAAAAACw7g7GO0MeKenu7i8ppY6Z3SvpmP4bmtkGSRt6Bh0hSY2775YWFvKQ\nSkWanc1vDep0lm5ZrUozM9LiotT7PSgzM/m6/uGzs/lvdf9u73CzfPtec3P5/v1vSdqwIY9H73Cz\nfPt2W2q19h/eauXruoaZplZLi4sPqLKnrmrxavZWtapkFc22lo9jq1pVkmm2761mzeqMTEkzveMi\nqTkzK0ud5cNNalZnVem0Ve0dx2J4tdNWpWd4MlOrOqOZdkvWM+6dSkXtSlWz7abUM0ntSkUdZ/ha\np6mdkhozD0h33ZXnTde45tMkLXspaaG5sGyZGdd8mqRlL3XaeqDVVGVvXdXq0jtDyjxNo1yfHmgu\nLltmyj5No5hPlXZTD7Sa0v33qVqpTsU0sT6t73yqtJp6oLmozgM/UNWWvw6lrNMkHfh8qrSaWlx8\nQO2FvbJmZSqmqXf4gcynSqupheaC2gt7VV3UVEyTdODzad8y88AepZmZqZimfePO+rQu86nbJd1/\nnzpzh0zFNHWxPq3PfOp2qeytq7Ph0KmYpv7hrE+jnU/7lpk9dXU2PGQqpmnZuLM+jXw+VZpLy4zm\nNkzFNI1iPlUW7l/2POc0TNOo5lNlcUEN25Of6zzkkOl8znKIaWrcc4+Gse5foG5mfy7p4Smls3uG\n3Snp3JTSR/pu+yeS/nhdRwgAAAAAAAAAAJTdcSml21Z744PxzpDvSjqp+4uZVSUdKekO57YXSHpr\n37CjJH1/3cauvI6QdKuk4yTdN+ZxmSR0idHGR5cYbXx0idHGRxcfXWK08dElRhsfXWK08dElRhsf\nXWK08dHFR5cYbWJHSLp9LXc4GCdDPivpf5jZTPG9IU+R1JL05f4bppQWJPW9D0eN9R/F8jGz7j/v\nSynRqECXGG18dInRxkeXGG18dPHRJUYbH11itPHRJUYbH11itPHRJUYbH118dInRZqA19zgYX6D+\nOUl3SXqNmR0n6Y8kXZZS2nsQ/m8AAAAAAAAAAPAgt+4nQ1JKHUm/IOlnJO2UdIikl633/wsAAAAA\nAAAAACAdnI/JUkpph6T/ejD+rweRBUmv0f4fK/ZgR5cYbXx0idHGR5cYbXx08dElRhsfXWK08dEl\nRhsfXWK08dElRhsfXXx0idFmhCylNO5xAAAAAAAAAAAAWDcH4ztDAAAAAAAAAAAAxoaTIQAAAAAA\nAAAAYKpxMgQAAAAAAAAAAEw1ToaMmZkda2b/amZPXuXtX2Jm/2lm95rZq/quO6e47j4ze4eZVXuu\nO8/Mvmdm3zezV496OkbNzE4outxnZlea2cZV3OcMM/umme02s781s0OK4VvMLPX9/O1K102iIbv8\nkJl92sz2mNmnzOyYvut/0sy+0DfMzOwtZlY3s9vN7DdGPS2jNGSXQeuS26xsy4skmdlJZvZFM/uB\nmX3WzE5cxX2ebmZfK3puN7NH9Fz3I2a2w8waZna5mR3Vc134GDRphuwyb2YfKZaLa8zsccXwFznL\nxZXFdaVbZrrM7MeL8d2yitsO2v78jpndZmb3mNn/NrNKz3Wl2jZJa+7yc2Z2Y/FY+n4zO7TnuheY\n2c7iMeidZjZXDN8ULU+TbrVtBq0zfbd7j5nt6vm9bNumXf3TuYr7nGFm3y4eZz7Yt8y4260yLjPD\ntOm5768W99lU/D5w+ku2bRpmmXmmmX3V8nb5UjN7aM917vJU0mVmtnisvM/Mrjez01Z5v6eY2Ted\n4Seb2X9Y3g/4BzM7rBhetseZNXVZzbz3mlkJ92eGWWYs3jYP3G5ZSfZngvm/2m3TfsfZxXW/amY3\nm9ndZvZmM7NiuNfsT9Zx8g7IMG1Wsf1xl6fiulJsmw5gmRl0rO3uH5dt22RmT7R8PHmfmX3CzI5f\nxX0GHUsP9VzfJBqyjXus3XebP+pd/sq2bTKzp1l+nmWv5f2yh6ziPoOODabmOeCDLqXEz5h+JL1T\nUip+nryK258kqSXpTElPlfRdSc8trnucpPsl/aykH5Z0o6TfKq77CUl1ST9W3O/7kp497ulfYVo/\nJel9kjZK+oikj61w+yMk3SvppUWLnZJeUVy3pfj9yJ6fQ1e6bhJ/1tqluM8nJF1Y3Ge7pHf1XLdQ\nLH9f6bvPiyXdIumJks4olq0fHvf0j3B5CdelQc3KtrwU4/wVSa+U9ChJ75L0Lyvc/pCixzmSjium\n/93FdRVJ3yrabJL0RUl/XlwXPgZN4s9auxT3eaek9xbT/leSPlkMn+tbJt4p6QNlXWaK8Z6V9PXi\n8WHLCrcdtP15iqS7JP2opP8i6TuSzimuK+O2aS1djpW0W9JPS3qMpP+Q9L+K606QtEfSc4p/XyPp\n1cV1myQt9i0zh4972kfcJlxnem7zdEkdSbt6hpVt27SrmP/7pnWF2x9ZrBMvKZaDqyS9vrhu0D5g\n6ZaZtbbpa3RnsZxtWmn6Bz0+TeLPEMtMd//31yQ9WtIVkv56FctTGZeZV0r6Z0mbJf2xpBtWcZ9v\nFcvK7r7hJul6Sf9d+fH5S5JeVVxXtseZNXVZad4PaLZFJdufGaLNoG3zoH290uzPKO/L907HOZK+\nu8J9Bh1nd5enn1fe5/u+pBcU171I0qf7/r9Dxt1gxG3C9WmF5ak026YhuwzaZxm0fzzw8WnSfop1\n4VXKx5PvlPSpVbSMjqWHeq5vUn/W2qa4j3us3XP9CUWH1DNsi0qybZI0o7x/8dpiWv5V0htWuM+g\nfbmpeg74oM+PcY/Ag/lH0sOLBXq1J0N+T9K1Pb+/QdJ7i3+/RtL2nuteJunfin//naSLeq773937\nTeKP8s5mR9J/KX4/U1J9hfs8S9KdPb+/UdLlxb+3SPp8cL/wukn7GbLL8ZK+J2mm+P0xkn6i5/pN\nkl6h/U+G/Kuk83p+v0LSa8fdYIRdBq1LYbMyLS/F+D5U0mclzfW0Wc3O6xU9v58r6YvFvzcXj1eH\n9Vx3bfHv8DFo0n6G7PIQ5QPBhxe/HyPpZ4Lb3iDp18q4zPRMw/nKB7C7tfIT24O2P78s6TU9110q\n6YLi36XaNg3R5SclvbPn9zdq6YmTX5D0zZ7rXtltWDwu3zbuaV3PNs59960zxe8zkq6V9FEtPxlS\nmm1TMX67JJ24htu/WNJ1Pb//vKTvFP8etN0q3TKz1jY997u4WC76T4a401+mbdOQy8xTJT3Q8/sv\ndZehFZanMi4zO1UcL0k6XNILJFVWuM9xks7W/k/sP0M9+76SniDp1OLfZXucWVOXleb9gGZbVLL9\nmSHahNtm57a9+3ql25/pGdd3SfqbFW4z6Dj7NyVd03PdpZLeXvz7RZLeP+5pXOc2g7Y/g/b1SrVt\nGqLLoH2WQfvHpdk2STpaeV/kkcXvp0vas8J9Bh1LD/Vc3yT+DNlmxWNt5RdpflT7nwwpxbZJ0slF\nl4cWvz9X0i0r3GfQvtzUPAc8jh8+JmuMUkp3p5R2reEuD1E+89d1t/IrbaX8Csrejzq6WtLpxdtU\nveuevuYRPnhmlZ9Uubn4/WFaPt2eWyX9j57f++9zuJl9qXj72Ht636K6wnWTZJguT5P0TUnvNrMf\nSHqz8qtSJEnF8nd37x2KZeZ0lWeZGabLoHVpYDOVZ3lRSunelNIzUkqLxXieJenLK9zn+pTS8yTJ\nzI6Q9HM999kr6Q9TSnuK33tbD3oMmijDdJH0XyU1JL2sWC4+oOXLhSTJ8sdtPVbSP/UMLs0yI0lm\ndpykbco75asRzvuU0t+nlP64+LublJ+A+vKA+03q48yau6SUPp1S+p3ivkcrvzKwO+3XSfohM/th\nyx81sUX53UpdbTP7l+It1JebWW1U07Eehlhmeu/rrTMvVX4109/13K5s26auPynm41fM7OQVbuut\nE8eb2aM1eLsllWyZKayljczsR5SfXDrfuTqa/tJsm3qspctNklqWPyqrKunZWnosGbQ8SSVaZszs\nkcovTvlxM6srn7C4NqXUGXS/lNKtku5wrnq6pG+b2T+ZWUPS70v6j7I9zgzbRQPm/YBmUon2Z4Zs\ns9K2ufu3+7dbpdqf6fNcSf93hdsMOs7+mvKr3L3rpPyYc4Plj/15w4GO7EG2mjZSvD4NWp7KuG3q\nWk2XcJ9lhf1jqTzbpnuV140zit/PkPN40WfQsfSwz/VNomHaDDzWNrPnK78T4kLnvmXZNnU/Eqs7\nn++W9GgzO3zAfQbty03Tc8AHHSdDyuUrkp5kZo+x/HnAL5DU3Tg8Usuf1L5H+ZWVDwuuW/a9EZMk\npbQnpfTmlNL9ZjYr6Q+UPwJp0H2+mVL6W0my/H0Rv9B3n0dLernyE91nKp9hXc11E2OYLspvQ/1/\nlHfGnqz89rmXrXCfhymfYCjFMjNkl0Hr0krNSrG8OPYq77z+/mpubPlzPXcrv0LnVZKUUro9pfT2\n4vqa8qvBuq0HPQZNstV2OVb5VS6HKb+CVJIucG63VdKOlNKdPcPKtsy8XfkVW9ev8vYrznsze6Hy\nCcvPpZQuHXC/iXycKay1iyTJzJ6h/G6zH0j6M0lKKX1D+SM7rlfe8X+o8qt7uo6RdJHyx7RsVj7R\nMMmGalNYts6Y2aMkvVrS7/bdrlTbph43SzpR+SPE/nqF23rrhJSncdB2q3ubMi0z0hraWP6uob9Q\nXjbucm4STX8Zt02r7pJSukf51defUd6ebVH+6Cdp8PLUvSzLMnOs8qspT1V+wuR6SX95gH9vq/I+\nzNOVX/jxyyrf48ywXYad92Xan1lzm1Vsm7v69/XKtj8jSbL8naXHSPrkoNsNOs5OKV2dUrqsuO6p\nyh/J8vc9dz9O0i9K+m+SXmpmZ6gEVtum4K5PKyxPZdw2raXLSvss7v5xoRTbppRSS/kFde80swXl\nF/L86gr3GXQsPexzfRNnmDYacKxt+Tu93qZ8vL7g3Lcs26YblPfVfs7MZrQ0noNO+A3al5ua54DH\ngZMhJZJS+pSkDymvRN9QfiXGnp6bmPPvFFyXNOGKB4gPSGpL+qNV3udY5e97+NuU0vZi8FWSHpdS\nujKl9DVJlyl/ht5K102kNXY5TPnM/JtSSjuVN7bPWe1/1ffviV5m1tJlhXVpULPSLS89flTSDuW3\nSK7G7coHNHVJf9p7RfHqhe3Kr+L5i96rnH9P9HKj1Xc5TPkj2V5ZvKPqr+SvS2dq+aulSrXMmNlz\nJP2I+ub5au7q/Lt33l+h/HmmP2FmLxhwv4lcXg6gi5Q/C/mnlHdA/6D4e09SPrh7vvIyuFf5SV4p\nv5JqY0rpspTSjcrvjpjGZaarf535M0nvSSldF/2Xff+eyGWm8PSU0qtTSrcpP8acZit/UaK7Lq2w\n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\n",
      "text/plain": [
       "<Figure size 2000x800 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20,8), dpi=100)\n",
    "plt.hist(movie.Rating, bins=20)\n",
    "plt.grid(True, linestyle=\"--\", color=\"r\",alpha=0.5)\n",
    "# 修改刻度\n",
    "xticks = np.linspace(movie.Rating.min(), movie.Rating.max(),21)\n",
    "plt.xticks(xticks)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Rank</th>\n",
       "      <th>Title</th>\n",
       "      <th>Genre</th>\n",
       "      <th>Description</th>\n",
       "      <th>Director</th>\n",
       "      <th>Actors</th>\n",
       "      <th>Year</th>\n",
       "      <th>Runtime (Minutes)</th>\n",
       "      <th>Rating</th>\n",
       "      <th>Votes</th>\n",
       "      <th>Revenue (Millions)</th>\n",
       "      <th>Metascore</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>Guardians of the Galaxy</td>\n",
       "      <td>Action,Adventure,Sci-Fi</td>\n",
       "      <td>A group of intergalactic criminals are forced ...</td>\n",
       "      <td>James Gunn</td>\n",
       "      <td>Chris Pratt, Vin Diesel, Bradley Cooper, Zoe S...</td>\n",
       "      <td>2014</td>\n",
       "      <td>121</td>\n",
       "      <td>8.1</td>\n",
       "      <td>757074</td>\n",
       "      <td>333.13</td>\n",
       "      <td>76.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>Prometheus</td>\n",
       "      <td>Adventure,Mystery,Sci-Fi</td>\n",
       "      <td>Following clues to the origin of mankind, a te...</td>\n",
       "      <td>Ridley Scott</td>\n",
       "      <td>Noomi Rapace, Logan Marshall-Green, Michael Fa...</td>\n",
       "      <td>2012</td>\n",
       "      <td>124</td>\n",
       "      <td>7.0</td>\n",
       "      <td>485820</td>\n",
       "      <td>126.46</td>\n",
       "      <td>65.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>Split</td>\n",
       "      <td>Horror,Thriller</td>\n",
       "      <td>Three girls are kidnapped by a man with a diag...</td>\n",
       "      <td>M. Night Shyamalan</td>\n",
       "      <td>James McAvoy, Anya Taylor-Joy, Haley Lu Richar...</td>\n",
       "      <td>2016</td>\n",
       "      <td>117</td>\n",
       "      <td>7.3</td>\n",
       "      <td>157606</td>\n",
       "      <td>138.12</td>\n",
       "      <td>62.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>Sing</td>\n",
       "      <td>Animation,Comedy,Family</td>\n",
       "      <td>In a city of humanoid animals, a hustling thea...</td>\n",
       "      <td>Christophe Lourdelet</td>\n",
       "      <td>Matthew McConaughey,Reese Witherspoon, Seth Ma...</td>\n",
       "      <td>2016</td>\n",
       "      <td>108</td>\n",
       "      <td>7.2</td>\n",
       "      <td>60545</td>\n",
       "      <td>270.32</td>\n",
       "      <td>59.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>Suicide Squad</td>\n",
       "      <td>Action,Adventure,Fantasy</td>\n",
       "      <td>A secret government agency recruits some of th...</td>\n",
       "      <td>David Ayer</td>\n",
       "      <td>Will Smith, Jared Leto, Margot Robbie, Viola D...</td>\n",
       "      <td>2016</td>\n",
       "      <td>123</td>\n",
       "      <td>6.2</td>\n",
       "      <td>393727</td>\n",
       "      <td>325.02</td>\n",
       "      <td>40.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Rank                    Title                     Genre  \\\n",
       "0     1  Guardians of the Galaxy   Action,Adventure,Sci-Fi   \n",
       "1     2               Prometheus  Adventure,Mystery,Sci-Fi   \n",
       "2     3                    Split           Horror,Thriller   \n",
       "3     4                     Sing   Animation,Comedy,Family   \n",
       "4     5            Suicide Squad  Action,Adventure,Fantasy   \n",
       "\n",
       "                                         Description              Director  \\\n",
       "0  A group of intergalactic criminals are forced ...            James Gunn   \n",
       "1  Following clues to the origin of mankind, a te...          Ridley Scott   \n",
       "2  Three girls are kidnapped by a man with a diag...    M. Night Shyamalan   \n",
       "3  In a city of humanoid animals, a hustling thea...  Christophe Lourdelet   \n",
       "4  A secret government agency recruits some of th...            David Ayer   \n",
       "\n",
       "                                              Actors  Year  Runtime (Minutes)  \\\n",
       "0  Chris Pratt, Vin Diesel, Bradley Cooper, Zoe S...  2014                121   \n",
       "1  Noomi Rapace, Logan Marshall-Green, Michael Fa...  2012                124   \n",
       "2  James McAvoy, Anya Taylor-Joy, Haley Lu Richar...  2016                117   \n",
       "3  Matthew McConaughey,Reese Witherspoon, Seth Ma...  2016                108   \n",
       "4  Will Smith, Jared Leto, Margot Robbie, Viola D...  2016                123   \n",
       "\n",
       "   Rating   Votes  Revenue (Millions)  Metascore  \n",
       "0     8.1  757074              333.13       76.0  \n",
       "1     7.0  485820              126.46       65.0  \n",
       "2     7.3  157606              138.12       62.0  \n",
       "3     7.2   60545              270.32       59.0  \n",
       "4     6.2  393727              325.02       40.0  "
      ]
     },
     "execution_count": 80,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "movie"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[['Action', 'Adventure', 'Sci-Fi'],\n",
       " ['Adventure', 'Mystery', 'Sci-Fi'],\n",
       " ['Horror', 'Thriller'],\n",
       " ['Animation', 'Comedy', 'Family'],\n",
       " ['Action', 'Adventure', 'Fantasy']]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "class_list = [item.split(\",\") for item in movie.Genre]\n",
    "class_list[:5]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'np' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-4-59ce26d0bceb>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mclass_name\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0munique\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0msubitem\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mitem\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mclass_list\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0msubitem\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mitem\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m: name 'np' is not defined"
     ]
    }
   ],
   "source": [
    "class_name = np.unique([subitem for item in class_list for subitem in item])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(['Action', 'Adventure', 'Animation', 'Biography', 'Comedy', 'Crime',\n",
       "       'Drama', 'Family', 'Fantasy', 'History', 'Horror', 'Music',\n",
       "       'Musical', 'Mystery', 'Romance', 'Sci-Fi', 'Sport', 'Thriller',\n",
       "       'War', 'Western'],\n",
       "      dtype='<U9')"
      ]
     },
     "execution_count": 90,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "class_name"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "20"
      ]
     },
     "execution_count": 92,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(class_name)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = pd.DataFrame(np.zeros((1000,20)),columns=class_name).head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 102,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[['Action', 'Adventure', 'Sci-Fi'],\n",
       " ['Adventure', 'Mystery', 'Sci-Fi'],\n",
       " ['Horror', 'Thriller'],\n",
       " ['Animation', 'Comedy', 'Family'],\n",
       " ['Action', 'Adventure', 'Fantasy']]"
      ]
     },
     "execution_count": 102,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "class_list[:5]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i in range(1000):\n",
    "    data.ix[i,class_list[i]] = 1\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 113,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Action</th>\n",
       "      <th>Adventure</th>\n",
       "      <th>Animation</th>\n",
       "      <th>Biography</th>\n",
       "      <th>Comedy</th>\n",
       "      <th>Crime</th>\n",
       "      <th>Drama</th>\n",
       "      <th>Family</th>\n",
       "      <th>Fantasy</th>\n",
       "      <th>History</th>\n",
       "      <th>Horror</th>\n",
       "      <th>Music</th>\n",
       "      <th>Musical</th>\n",
       "      <th>Mystery</th>\n",
       "      <th>Romance</th>\n",
       "      <th>Sci-Fi</th>\n",
       "      <th>Sport</th>\n",
       "      <th>Thriller</th>\n",
       "      <th>War</th>\n",
       "      <th>Western</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>970</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>971</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>972</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>973</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>974</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>975</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>976</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>977</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>978</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>979</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>980</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>981</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>982</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>983</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>984</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>985</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>986</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>987</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>988</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>989</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>990</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>991</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>992</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>993</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>994</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>995</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>996</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>997</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>998</th>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>999</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1000 rows × 20 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "     Action  Adventure  Animation  Biography  Comedy  Crime  Drama  Family  \\\n",
       "0       1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "1       0.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "2       0.0        0.0        0.0        0.0     0.0    0.0    0.0     0.0   \n",
       "3       0.0        0.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "4       1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "5       1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "6       NaN        NaN        NaN        NaN     1.0    1.0    1.0     1.0   \n",
       "7       NaN        NaN        NaN        NaN     1.0    NaN    NaN     NaN   \n",
       "8       1.0        1.0        1.0        1.0     NaN    NaN    NaN     NaN   \n",
       "9       NaN        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "10      NaN        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "11      NaN        NaN        NaN        1.0     1.0    1.0    1.0     1.0   \n",
       "12      1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "13      NaN        1.0        1.0        1.0     1.0    NaN    NaN     NaN   \n",
       "14      1.0        1.0        1.0        1.0     1.0    1.0    1.0     NaN   \n",
       "15      NaN        1.0        1.0        1.0     1.0    NaN    NaN     NaN   \n",
       "16      NaN        NaN        NaN        1.0     1.0    1.0    1.0     1.0   \n",
       "17      1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "18      NaN        NaN        NaN        1.0     1.0    1.0    1.0     NaN   \n",
       "19      NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "20      NaN        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "21      NaN        NaN        NaN        NaN     NaN    NaN    1.0     NaN   \n",
       "22      NaN        NaN        NaN        NaN     NaN    1.0    1.0     1.0   \n",
       "23      NaN        1.0        1.0        1.0     1.0    NaN    NaN     NaN   \n",
       "24      1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "25      NaN        NaN        NaN        NaN     1.0    NaN    NaN     NaN   \n",
       "26      1.0        1.0        1.0        1.0     1.0    1.0    1.0     NaN   \n",
       "27      NaN        NaN        NaN        NaN     NaN    NaN    NaN     NaN   \n",
       "28      NaN        NaN        NaN        NaN     1.0    NaN    NaN     NaN   \n",
       "29      1.0        1.0        1.0        1.0     1.0    1.0    1.0     NaN   \n",
       "..      ...        ...        ...        ...     ...    ...    ...     ...   \n",
       "970     NaN        NaN        NaN        NaN     NaN    NaN    NaN     NaN   \n",
       "971     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "972     NaN        NaN        NaN        NaN     1.0    1.0    1.0     1.0   \n",
       "973     NaN        NaN        NaN        NaN     NaN    NaN    NaN     NaN   \n",
       "974     NaN        NaN        NaN        1.0     1.0    1.0    1.0     1.0   \n",
       "975     NaN        NaN        NaN        NaN     1.0    1.0    1.0     1.0   \n",
       "976     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "977     NaN        NaN        NaN        NaN     1.0    NaN    NaN     NaN   \n",
       "978     NaN        NaN        NaN        NaN     NaN    NaN    1.0     NaN   \n",
       "979     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "980     NaN        NaN        NaN        1.0     1.0    1.0    1.0     1.0   \n",
       "981     NaN        NaN        NaN        NaN     1.0    1.0    1.0     1.0   \n",
       "982     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "983     NaN        NaN        NaN        NaN     1.0    NaN    NaN     NaN   \n",
       "984     NaN        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "985     NaN        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "986     NaN        NaN        NaN        NaN     NaN    NaN    NaN     NaN   \n",
       "987     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "988     NaN        NaN        NaN        NaN     NaN    NaN    NaN     NaN   \n",
       "989     NaN        NaN        NaN        1.0     1.0    1.0    1.0     1.0   \n",
       "990     1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "991     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "992     NaN        NaN        NaN        NaN     1.0    1.0    1.0     1.0   \n",
       "993     1.0        1.0        1.0        1.0     1.0    1.0    1.0     1.0   \n",
       "994     NaN        NaN        NaN        NaN     1.0    NaN    NaN     NaN   \n",
       "995     NaN        NaN        NaN        NaN     NaN    1.0    1.0     1.0   \n",
       "996     NaN        NaN        NaN        NaN     NaN    NaN    NaN     NaN   \n",
       "997     NaN        NaN        NaN        NaN     NaN    NaN    1.0     1.0   \n",
       "998     NaN        1.0        1.0        1.0     1.0    NaN    NaN     NaN   \n",
       "999     NaN        NaN        NaN        NaN     1.0    1.0    1.0     1.0   \n",
       "\n",
       "     Fantasy  History  Horror  Music  Musical  Mystery  Romance  Sci-Fi  \\\n",
       "0        1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "1        1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "2        0.0      0.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "3        0.0      0.0     0.0    0.0      0.0      0.0      0.0     0.0   \n",
       "4        1.0      0.0     0.0    0.0      0.0      0.0      0.0     0.0   \n",
       "5        1.0      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "6        1.0      1.0     1.0    1.0      NaN      NaN      NaN     NaN   \n",
       "7        NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "8        NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "9        1.0      1.0     1.0    1.0      1.0      1.0      1.0     NaN   \n",
       "10       1.0      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "11       1.0      1.0     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "12       1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "13       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "14       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "15       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "16       1.0      1.0     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "17       1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "18       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "19       1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "20       1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "21       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "22       1.0      1.0     1.0    NaN      NaN      NaN      NaN     NaN   \n",
       "23       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "24       1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "25       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "26       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "27       NaN      NaN     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "28       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "29       NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "..       ...      ...     ...    ...      ...      ...      ...     ...   \n",
       "970      NaN      NaN     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "971      1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "972      1.0      1.0     1.0    1.0      1.0      NaN      NaN     NaN   \n",
       "973      NaN      NaN     1.0    1.0      1.0      1.0      NaN     NaN   \n",
       "974      1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "975      1.0      1.0     1.0    1.0      1.0      1.0      1.0     NaN   \n",
       "976      1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "977      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "978      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "979      1.0      1.0     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "980      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "981      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "982      1.0      1.0     1.0    1.0      1.0      NaN      NaN     NaN   \n",
       "983      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "984      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "985      1.0      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "986      NaN      NaN     1.0    1.0      1.0      1.0      1.0     1.0   \n",
       "987      1.0      1.0     1.0    1.0      1.0      1.0      1.0     NaN   \n",
       "988      NaN      NaN     1.0    NaN      NaN      NaN      NaN     NaN   \n",
       "989      1.0      1.0     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "990      1.0      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "991      1.0      1.0     1.0    1.0      NaN      NaN      NaN     NaN   \n",
       "992      1.0      1.0     1.0    1.0      1.0      1.0      1.0     NaN   \n",
       "993      1.0      1.0     1.0    NaN      NaN      NaN      NaN     NaN   \n",
       "994      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "995      1.0      1.0     1.0    1.0      1.0      1.0      NaN     NaN   \n",
       "996      NaN      NaN     1.0    NaN      NaN      NaN      NaN     NaN   \n",
       "997      1.0      1.0     1.0    1.0      1.0      1.0      1.0     NaN   \n",
       "998      NaN      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "999      1.0      NaN     NaN    NaN      NaN      NaN      NaN     NaN   \n",
       "\n",
       "     Sport  Thriller  War  Western  \n",
       "0      0.0       0.0  0.0      0.0  \n",
       "1      0.0       0.0  0.0      0.0  \n",
       "2      1.0       1.0  0.0      0.0  \n",
       "3      0.0       0.0  0.0      0.0  \n",
       "4      0.0       0.0  0.0      0.0  \n",
       "5      NaN       NaN  NaN      NaN  \n",
       "6      NaN       NaN  NaN      NaN  \n",
       "7      NaN       NaN  NaN      NaN  \n",
       "8      NaN       NaN  NaN      NaN  \n",
       "9      NaN       NaN  NaN      NaN  \n",
       "10     NaN       NaN  NaN      NaN  \n",
       "11     NaN       NaN  NaN      NaN  \n",
       "12     NaN       NaN  NaN      NaN  \n",
       "13     NaN       NaN  NaN      NaN  \n",
       "14     NaN       NaN  NaN      NaN  \n",
       "15     NaN       NaN  NaN      NaN  \n",
       "16     NaN       NaN  NaN      NaN  \n",
       "17     1.0       1.0  NaN      NaN  \n",
       "18     NaN       NaN  NaN      NaN  \n",
       "19     NaN       NaN  NaN      NaN  \n",
       "20     1.0       1.0  NaN      NaN  \n",
       "21     NaN       NaN  NaN      NaN  \n",
       "22     NaN       NaN  NaN      NaN  \n",
       "23     NaN       NaN  NaN      NaN  \n",
       "24     NaN       NaN  NaN      NaN  \n",
       "25     NaN       NaN  NaN      NaN  \n",
       "26     NaN       NaN  NaN      NaN  \n",
       "27     1.0       1.0  NaN      NaN  \n",
       "28     NaN       NaN  NaN      NaN  \n",
       "29     NaN       NaN  NaN      NaN  \n",
       "..     ...       ...  ...      ...  \n",
       "970    1.0       1.0  NaN      NaN  \n",
       "971    1.0       1.0  NaN      NaN  \n",
       "972    NaN       NaN  NaN      NaN  \n",
       "973    NaN       NaN  NaN      NaN  \n",
       "974    1.0       NaN  NaN      NaN  \n",
       "975    NaN       NaN  NaN      NaN  \n",
       "976    1.0       1.0  NaN      NaN  \n",
       "977    NaN       NaN  NaN      NaN  \n",
       "978    NaN       NaN  NaN      NaN  \n",
       "979    1.0       1.0  NaN      NaN  \n",
       "980    NaN       NaN  NaN      NaN  \n",
       "981    NaN       NaN  NaN      NaN  \n",
       "982    NaN       NaN  NaN      NaN  \n",
       "983    NaN       NaN  NaN      NaN  \n",
       "984    NaN       NaN  NaN      NaN  \n",
       "985    NaN       NaN  NaN      NaN  \n",
       "986    1.0       1.0  NaN      NaN  \n",
       "987    NaN       NaN  NaN      NaN  \n",
       "988    NaN       NaN  NaN      NaN  \n",
       "989    NaN       NaN  NaN      NaN  \n",
       "990    NaN       NaN  NaN      NaN  \n",
       "991    NaN       NaN  NaN      NaN  \n",
       "992    NaN       NaN  NaN      NaN  \n",
       "993    NaN       NaN  NaN      NaN  \n",
       "994    NaN       NaN  NaN      NaN  \n",
       "995    NaN       NaN  NaN      NaN  \n",
       "996    NaN       NaN  NaN      NaN  \n",
       "997    NaN       NaN  NaN      NaN  \n",
       "998    NaN       NaN  NaN      NaN  \n",
       "999    NaN       NaN  NaN      NaN  \n",
       "\n",
       "[1000 rows x 20 columns]"
      ]
     },
     "execution_count": 113,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
